Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2004-01-22 22:03:19 +0300
committerChristopher Faylor <me@cgf.cx>2004-01-22 22:03:19 +0300
commit39d06d71ff60e2c65b678e41b004e00c262c938b (patch)
tree481af3287dc0d9a44d505a3e7bce03dc105976b3 /winsup/cygwin/exceptions.cc
parent537ca63f8e95a1f4f0c71e40c64c09cdbb0b74bd (diff)
* 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.cc10
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;