From e73cdd48ada4c95293630ad383aa69b9e89a2034 Mon Sep 17 00:00:00 2001 From: cgf Date: Thu, 13 Jan 2005 16:38:34 +0000 Subject: [PATCH] * init.cc (dll_entry): Nuke attempt to set exit code since parent will use windows exit code if needed. * pinfo.cc (pinfo::exit): Move release() here to minimize pid creation race (suggested by Pierre Humblet). --- winsup/cygwin/ChangeLog | 7 +++++++ winsup/cygwin/init.cc | 6 ------ winsup/cygwin/pinfo.cc | 1 + 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index aa8f6a2581..31413a86be 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2005-01-13 Christopher Faylor + + * init.cc (dll_entry): Nuke attempt to set exit code since parent will + use windows exit code if needed. + * pinfo.cc (pinfo::exit): Move release() here to minimize pid creation + race (suggested by Pierre Humblet). + 2005-01-12 Christopher Faylor Reorganize header file inclusion throughout so that cygerrno.h comes diff --git a/winsup/cygwin/init.cc b/winsup/cygwin/init.cc index ad4761820d..66fb5d50e6 100644 --- a/winsup/cygwin/init.cc +++ b/winsup/cygwin/init.cc @@ -128,12 +128,6 @@ dll_entry (HANDLE h, DWORD reason, void *static_load) dll_crt0_0 (); break; case DLL_PROCESS_DETACH: - if (myself) - { - if (!hExeced && myself->exitcode == EXITCODE_UNSET) - myself->exitcode = 1 << 8; - myself.release (); - } break; case DLL_THREAD_ATTACH: munge_threadfunc (); diff --git a/winsup/cygwin/pinfo.cc b/winsup/cygwin/pinfo.cc index 84a66ed53b..37821262d7 100644 --- a/winsup/cygwin/pinfo.cc +++ b/winsup/cygwin/pinfo.cc @@ -140,6 +140,7 @@ pinfo::exit (DWORD n) set_exit_state (PID_EXITED); if (n != EXITCODE_EXEC) self->alert_parent (0); + release (); _my_tls.stacklock = 0; _my_tls.stackptr = _my_tls.stack; -- 2.11.0