diff options
author | Christopher Faylor <me@cgf.cx> | 2005-09-23 03:35:41 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2005-09-23 03:35:41 +0000 |
commit | 936e4018b6fd1ad21ac528cf567fa81a46b054b0 (patch) | |
tree | 006c51049b5d80576f8dba9cfc0e7bb71d65db4f /winsup/cygwin/exceptions.cc | |
parent | 4340c43955131ac445d4d6e9b5fee36b1168ed9c (diff) | |
download | cygnal-936e4018b6fd1ad21ac528cf567fa81a46b054b0.tar.gz cygnal-936e4018b6fd1ad21ac528cf567fa81a46b054b0.tar.bz2 cygnal-936e4018b6fd1ad21ac528cf567fa81a46b054b0.zip |
* cygheap.cc (cygheap_fixup_in_child): It's not just for exec.
* cygtls.h (struct _cygtls::thread_handle): New field.
* dcrt0.cc (exit_lock): Remove declaration.
* winsup.h (exit_lock): Add declaration.
* exceptions.cc (sigpacket::process): Properly return after signal_exit.
* pinfo.cc (pinfo::exit): Only exit the process if _my_tls.thread_handle has
not been filled out -- which should be an impossible event.
* sigproc.cc (sigproc_terminate): Fillout _my_tls.thread_handle to provide
something for wait_sig to wait for. Use the siginfo_t version of sig_send and
fill out the tls argument with _my_tls.
(wait_sig): Wait for the thread specified in pack.tls or (for now) complain
bitterly if it doesn't exit.
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r-- | winsup/cygwin/exceptions.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index efd49ce6f..79cc251a3 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -1162,6 +1162,7 @@ exit_sig: sigproc_printf ("signal %d, about to call do_exit", si.si_signo); signal_exit (si.si_signo); /* May not return */ + return rc; } CRITICAL_SECTION NO_COPY exit_lock; |