diff options
Diffstat (limited to 'winsup/cygwin/signal.cc')
-rw-r--r-- | winsup/cygwin/signal.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/signal.cc b/winsup/cygwin/signal.cc index 52c402c49..bd75dff32 100644 --- a/winsup/cygwin/signal.cc +++ b/winsup/cygwin/signal.cc @@ -349,11 +349,11 @@ extern "C" int sigaction (int sig, const struct sigaction *newact, struct sigaction *oldact) { sig_dispatch_pending (); - sigproc_printf ("signal %d, newact %p, oldact %p", sig, newact, oldact); /* check that sig is in right range */ if (sig < 0 || sig >= NSIG) { set_errno (EINVAL); + sigproc_printf ("signal %d, newact %p, oldact %p", sig, newact, oldact); syscall_printf ("SIG_ERR = sigaction signal %d out of range", sig); return -1; } @@ -361,6 +361,11 @@ sigaction (int sig, const struct sigaction *newact, struct sigaction *oldact) struct sigaction oa = global_sigs[sig]; if (newact) + sigproc_printf ("signal %d, newact %p (handler %p), oa %p", sig, newact, newact->sa_handler, oa, oa.sa_handler); + else + sigproc_printf ("signal %d, newact %p, oa %p", sig, newact, oa, oa.sa_handler); + + if (newact) { if (sig == SIGKILL || sig == SIGSTOP) { |