# HG changeset patch # User Gerd Moellmann # Date 1001081342 0 # Node ID 54dd36cef0e2c9947d8403ee7c3df26d53c62dd2 # Parent f706cd16b765c054a0524f759f867f75b5e41cf9 (wait_for_termination) [POSIX_SIGNALS]: Terminate only if kill returns -1, and errno is ESRCH. diff -r f706cd16b765 -r 54dd36cef0e2 src/sysdep.c --- a/src/sysdep.c Fri Sep 21 13:39:07 2001 +0000 +++ b/src/sysdep.c Fri Sep 21 14:09:02 2001 +0000 @@ -480,7 +480,8 @@ #else /* neither BSD_SYSTEM nor UNIPLUS: random sysV */ #ifdef POSIX_SIGNALS /* would this work for LINUX as well? */ sigblock (sigmask (SIGCHLD)); - if (0 > kill (pid, 0)) + errno = 0; + if (kill (pid, 0) == -1 && errno == ESRCH) { sigunblock (sigmask (SIGCHLD)); break;