diff options
author | Christopher Faylor <me@cgf.cx> | 2005-09-02 04:46:51 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2005-09-02 04:46:51 +0000 |
commit | 7a1bf10a8433261a1dd4ae86b76750716d358569 (patch) | |
tree | b7afc8189706eba8c9e0ccca56ca61c7cda00013 /winsup/cygwin/sigproc.cc | |
parent | 062c2fa42f64aef80615e433af44028332b34ca8 (diff) | |
download | cygnal-7a1bf10a8433261a1dd4ae86b76750716d358569.tar.gz cygnal-7a1bf10a8433261a1dd4ae86b76750716d358569.tar.bz2 cygnal-7a1bf10a8433261a1dd4ae86b76750716d358569.zip |
bad_addresses
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r-- | winsup/cygwin/sigproc.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 74ffed179..c7752b882 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -346,6 +346,15 @@ proc_subproc (DWORD what, DWORD val) if (global_sigs[SIGCHLD].sa_handler == (void *) SIG_IGN) for (int i = 0; i < nprocs; i += remove_proc (i)) continue; + break; + case PROC_KILLFORKED: + for (int i = 0; i < nprocs; i++) + if (ISSTATE (procs[i], PID_INITIALIZING)) + { + TerminateProcess (procs[i].hProcess, 1); + procs[i]->process_state = PID_EXITED; + } + break; } out: |