diff options
author | Christopher Faylor <me@cgf.cx> | 2004-01-22 19:03:19 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2004-01-22 19:03:19 +0000 |
commit | 39d06d71ff60e2c65b678e41b004e00c262c938b (patch) | |
tree | 481af3287dc0d9a44d505a3e7bce03dc105976b3 /winsup/cygwin/exceptions.cc | |
parent | 537ca63f8e95a1f4f0c71e40c64c09cdbb0b74bd (diff) | |
download | cygnal-39d06d71ff60e2c65b678e41b004e00c262c938b.tar.gz cygnal-39d06d71ff60e2c65b678e41b004e00c262c938b.tar.bz2 cygnal-39d06d71ff60e2c65b678e41b004e00c262c938b.zip |
* cygtls.cc (_threadinfo::remove): Don't assume that we are removing _my_tls.
* exceptions.cc (setup_handler): Improve debugging output.
(call_signal_handler_now): Remove ill-advised debugger call.
* sigproc.cc (sigcomplete_main): Delete.
(sig_send): Honor FIXME and avoid using main thread's completion event for
everything or suffer races.
(pending_signals::add): Default stored mask to current process mask rather than
mask at time of signal send.
(wait_sig): Add debugging output.
* sigproc.h (sigpacket::mask_storage): Delete.
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r-- | winsup/cygwin/exceptions.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index 1e9745b22..e67405527 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -744,7 +744,11 @@ setup_handler (int sig, void *handler, struct sigaction& siga, _threadinfo *tls) bool interrupted = false; if (tls->sig) - goto out; + { + sigproc_printf ("trying to send sig %d but signal %d already armed", + sig, tls->sig); + goto out; + } for (int i = 0; i < CALL_HANDLER_RETRY; i++) { @@ -1141,10 +1145,6 @@ call_signal_handler_now () void (*sigfunc) (int) = _my_tls.func; (void) _my_tls.pop (); -#ifdef DEBUGGING - if (_my_tls.stackptr > (_my_tls.stack + 1)) - try_to_debug (); -#endif reset_signal_arrived (); sigset_t oldmask = _my_tls.oldmask; int this_errno = _my_tls.saved_errno; |