aboutsummaryrefslogtreecommitdiffstats
path: root/TraceScreen.c
diff options
context:
space:
mode:
Diffstat (limited to 'TraceScreen.c')
-rw-r--r--TraceScreen.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/TraceScreen.c b/TraceScreen.c
index c726394..c3a9449 100644
--- a/TraceScreen.c
+++ b/TraceScreen.c
@@ -10,6 +10,7 @@ in the source distribution for its full text.
#include "TraceScreen.h"
#include <assert.h>
+#include <errno.h>
#include <fcntl.h>
#include <signal.h>
#include <stdbool.h>
@@ -47,7 +48,9 @@ void TraceScreen_delete(Object* cast) {
TraceScreen* this = (TraceScreen*) cast;
if (this->child > 0) {
kill(this->child, SIGTERM);
- waitpid(this->child, NULL, 0);
+ while (waitpid(this->child, NULL, 0) == -1)
+ if (errno != EINTR)
+ break;
}
if (this->strace) {

© 2014-2024 Faster IT GmbH | imprint | privacy policy