rc

[fork] interactive rc shell
Log | Files | Refs | README | LICENSE

commit 9a73d57745c20ce30e630a2200885e1f0b023a64
parent 047445c483a321852b4e595ef47a1dc84aaef617
Author: tgoodwin <tgoodwin>
Date:   Thu, 19 Feb 1998 13:27:48 +0000

abandon waitforall() if rc_wait4() returns with errno == EINTR

Diffstat:
Mwait.c | 5++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/wait.c b/wait.c @@ -117,8 +117,11 @@ extern void waitforall() { pid_t pid = rc_wait4(plist->pid, &stat, FALSE); if (pid > 0) setstatus(pid, stat); - else + else { set(FALSE); + if (errno == EINTR) + return; + } sigchk(); } }