diff options
Diffstat (limited to 'winsup/cygwin')
-rw-r--r-- | winsup/cygwin/ChangeLog | 7 | ||||
-rw-r--r-- | winsup/cygwin/sigproc.cc | 2 | ||||
-rw-r--r-- | winsup/cygwin/spawn.cc | 1 |
3 files changed, 9 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 62201b7a2..cb6dcb549 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,12 @@ 2005-10-18 Christopher Faylor <cgf@timesys.com> + * sigproc.cc (child_info::sync): Use correct name when closing to + prevent warnings when DEBUGGING. + * spawn.cc (spawn_guts): Set myself.hProcess to pi.hProcess since this + may have been zeroed by the previous sync. + +2005-10-18 Christopher Faylor <cgf@timesys.com> + * sigproc.cc (child_info::sync): Fix typo which caused hProcess to never be cleared. Only clear hProcess when not forking. diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index fc8ea9147..86ac20c8b 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -848,7 +848,7 @@ child_info::sync (pid_t pid, HANDLE& hProcess, DWORD howlong) { if (type != _PROC_FORK && x == nsubproc_ready) { - ForceCloseHandle (hProcess); + ForceCloseHandle1 (hProcess, childhProcess); hProcess = NULL; } sigproc_printf ("process %d synchronized, WFMO returned %d", pid, x); diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc index 17c7e5828..269fb7491 100644 --- a/winsup/cygwin/spawn.cc +++ b/winsup/cygwin/spawn.cc @@ -814,6 +814,7 @@ spawn_guts (const char * prog_arg, const char *const *argv, switch (mode) { case _P_OVERLAY: + myself.hProcess = pi.hProcess; if (!synced && !myself->wr_proc_pipe) { extern bool is_toplevel_proc; |