diff options
author | Christopher Faylor <me@cgf.cx> | 2003-06-03 02:32:49 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2003-06-03 02:32:49 +0000 |
commit | 0c8fe172781f9f2fc2aa2cd07effbbcca58a9a4e (patch) | |
tree | 002ef6710e6c8eaee08c2d0cf147d72e55f59ecf | |
parent | 38b524b3858c96cca78e32e80cb67509b38aab05 (diff) | |
download | newlib-0c8fe172781f9f2fc2aa2cd07effbbcca58a9a4e.zip newlib-0c8fe172781f9f2fc2aa2cd07effbbcca58a9a4e.tar.gz newlib-0c8fe172781f9f2fc2aa2cd07effbbcca58a9a4e.tar.bz2 |
* spawn.cc (spawn_guts): Don't hang around if the parent doesn't exist.
-rw-r--r-- | winsup/cygwin/ChangeLog | 4 | ||||
-rw-r--r-- | winsup/cygwin/spawn.cc | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 0ea1da2..b34f094 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,9 @@ 2003-06-02 Christopher Faylor <cgf@redhat.com> + * spawn.cc (spawn_guts): Don't hang around if the parent doesn't exist. + +2003-06-02 Christopher Faylor <cgf@redhat.com> + * cygthread.h (cygthread::terminate_thread): Mark private. * cygthread.cc (cygthread::terminate_thread): Deallocate free_range thread stuff. diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc index e92aa29..b6ec1b9 100644 --- a/winsup/cygwin/spawn.cc +++ b/winsup/cygwin/spawn.cc @@ -800,9 +800,9 @@ spawn_guts (const char * prog_arg, const char *const *argv, reset_signal_arrived (); continue; case WAIT_OBJECT_0 + 2: - if (myself->ppid_handle) + if (my_parent_is_alive ()) res |= EXIT_REPARENTING; - if (!my_parent_is_alive ()) + else if (!myself->ppid_handle) { nwait = 2; sigproc_terminate (); |