diff options
author | Christopher Faylor <me@cgf.cx> | 2001-09-12 05:56:32 +0400 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2001-09-12 05:56:32 +0400 |
commit | 101f820da27a0aa142df153e35d2890209b49456 (patch) | |
tree | a6c86d186b9cee6915569cd6f1d151bf0afe6f57 /winsup/cygwin/sigproc.h | |
parent | e3c25c4a47ad780d0fec814f0feef537733b27d9 (diff) |
* sigproc.h (sigframe::unregister): Return true/false whether this frame is
capable of responding to signals.
* exceptions.cc (sigframe::call_signal_handler): Don't call signal handler if
it is not armed for this thread.
Diffstat (limited to 'winsup/cygwin/sigproc.h')
-rw-r--r-- | winsup/cygwin/sigproc.h | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/winsup/cygwin/sigproc.h b/winsup/cygwin/sigproc.h index 5726a4519..38e65faaa 100644 --- a/winsup/cygwin/sigproc.h +++ b/winsup/cygwin/sigproc.h @@ -50,17 +50,17 @@ class sigframe { private: sigthread *st; - void unregister () + bool unregister () { - if (st) - { - EnterCriticalSection (&st->lock); - st->frame = 0; - st->exception = 0; - st->release_winapi_lock (); - LeaveCriticalSection (&st->lock); - st = NULL; - } + if (!st) + return 0; + EnterCriticalSection (&st->lock); + st->frame = 0; + st->exception = 0; + st->release_winapi_lock (); + LeaveCriticalSection (&st->lock); + st = NULL; + return 1; } public: |