Displaying 1 result from an estimated 1 matches for "2b8e1afe".
2019 Jan 25
0
[klibc:update-dash] jobs - Do not block when waiting on SIGCHLD
...lags) &&
+ !(exception == EXERROR && spclbltin <= 0)) {
raise:
longjmp(handler->loc, 1);
}
@@ -892,6 +887,7 @@ raise:
}
status = waitforjob(jp);
+ FORCEINTON;
out:
if (cmd->ncmd.redirect)
diff --git a/usr/dash/jobs.c b/usr/dash/jobs.c
index 4548ae69..2b8e1afe 100644
--- a/usr/dash/jobs.c
+++ b/usr/dash/jobs.c
@@ -974,10 +974,17 @@ waitforjob(struct job *jp)
int st;
TRACE(("waitforjob(%%%d) called\n", jp ? jobno(jp) : 0));
- while ((jp && jp->state == JOBRUNNING) || gotsigchld)
- dowait(DOWAIT_BLOCK, jp);
- if (!jp)
+ if (!jp)...