about summary refs log tree commit diff
path: root/sysdeps/posix/waitid.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2004-07-27 01:20:15 +0000
committerRoland McGrath <roland@gnu.org>2004-07-27 01:20:15 +0000
commitd01ad8fb22c2b80c20bbc9d043666af0438b0815 (patch)
treeb11ebe601b3895f19bec15cc03cbdbbf3a510e3f /sysdeps/posix/waitid.c
parent490998a5f2160f4bf7026e74abb9bd2bcffee953 (diff)
downloadglibc-d01ad8fb22c2b80c20bbc9d043666af0438b0815.tar.gz
glibc-d01ad8fb22c2b80c20bbc9d043666af0438b0815.tar.xz
glibc-d01ad8fb22c2b80c20bbc9d043666af0438b0815.zip
2004-07-26 Roland McGrath <roland@redhat.com>
	* sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
	call to __waitpid.
Diffstat (limited to 'sysdeps/posix/waitid.c')
-rw-r--r--sysdeps/posix/waitid.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sysdeps/posix/waitid.c b/sysdeps/posix/waitid.c
index 76a3b1d660..7d65e42fdc 100644
--- a/sysdeps/posix/waitid.c
+++ b/sysdeps/posix/waitid.c
@@ -92,7 +92,12 @@ OUR_WAITID (idtype_t idtype, id_t id, siginfo_t *infop, int options)
   /* Note the waitid() is a cancellation point.  But since we call
      waitpid() which itself is a cancellation point we do not have
      to do anything here.  */
-  child = __waitpid (pid, &status, options);
+  child = __waitpid (pid, &status,
+		     options
+#ifdef WEXITED
+		     &~ WEXITED
+#endif
+		     );
 
   if (child == -1)
     /* `waitpid' set `errno' for us.  */