diff --git a/executer/user/mcexec.c b/executer/user/mcexec.c index ad9da436..af72c7ab 100644 --- a/executer/user/mcexec.c +++ b/executer/user/mcexec.c @@ -1741,7 +1741,8 @@ sync_out: int ret; pid_t pid = w.sr.args[0]; - if ((ret = waitpid(pid, &status, 0)) != pid) { + while ((ret = waitpid(pid, &status, 0)) == -1 && errno == EINTR); + if(ret != pid) { fprintf(stderr, "ERROR: waiting for %lu\n", w.sr.args[0]); }