diff options
author | Christopher Faylor <me@cgf.cx> | 2005-09-26 14:58:16 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2005-09-26 14:58:16 +0000 |
commit | a3d5219c5f63c9f98e88667866017987f147babf (patch) | |
tree | 020b5a2b053df71ade746e14d64a4edb4549a0e2 /winsup/cygwin/exceptions.cc | |
parent | b470a0e81fb3e56dfd7886e0099e7b6b7c148101 (diff) | |
download | cygnal-a3d5219c5f63c9f98e88667866017987f147babf.tar.gz cygnal-a3d5219c5f63c9f98e88667866017987f147babf.tar.bz2 cygnal-a3d5219c5f63c9f98e88667866017987f147babf.zip |
* exceptions.cc (_cygtls::call_signal_handler): Minor cleanup.
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r-- | winsup/cygwin/exceptions.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index 32d4b6d7e..6811ecf40 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -1242,7 +1242,6 @@ _cygtls::call_signal_handler () lock (); unlock (); // make sure synchronized this_sa_flags = sa_flags; int thissig = sig; - void (*sigfunc) (int) = func; pop (); reset_signal_arrived (); @@ -1250,8 +1249,11 @@ _cygtls::call_signal_handler () int this_errno = saved_errno; incyg--; sig = 0; - if (this_sa_flags & SA_SIGINFO == 0) - sigfunc (thissig); + if (!(this_sa_flags & SA_SIGINFO)) + { + void (*sigfunc) (int) = func; + sigfunc (thissig); + } else { siginfo_t thissi = infodata; |