diff options
Diffstat (limited to 'winsup/cygwin/signal.cc')
-rw-r--r-- | winsup/cygwin/signal.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/winsup/cygwin/signal.cc b/winsup/cygwin/signal.cc index bcaf6edb2..75eea49e9 100644 --- a/winsup/cygwin/signal.cc +++ b/winsup/cygwin/signal.cc @@ -25,6 +25,7 @@ details. */ #include "fhandler.h" #include "dtable.h" #include "cygheap.h" +#include "cygtls.h" int sigcatchers; /* FIXME: Not thread safe. */ @@ -343,7 +344,9 @@ abort (void) sigdelset (&sig_mask, SIGABRT); set_signal_mask (sig_mask, myself->getsigmask ()); + _my_tls.incyg++; raise (SIGABRT); + _my_tls.incyg--; _my_tls.call_signal_handler (); /* Call any signal handler */ do_exit (SIGABRT); /* signal handler didn't exit. Goodbye. */ } |