diff options
author | Christopher Faylor <me@cgf.cx> | 2004-03-25 15:15:27 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2004-03-25 15:15:27 +0000 |
commit | 474048c26edf5ad4fa269ab1801bf4994bf95083 (patch) | |
tree | 981ea5d735294c489fcd7b6edf4bf7a4317f65c2 /winsup/cygwin/signal.cc | |
parent | 3ca0d9b61344f0112d218af4f0f3833ba33a41ee (diff) | |
download | cygnal-474048c26edf5ad4fa269ab1801bf4994bf95083.tar.gz cygnal-474048c26edf5ad4fa269ab1801bf4994bf95083.tar.bz2 cygnal-474048c26edf5ad4fa269ab1801bf4994bf95083.zip |
* path.cc (normalize_posix_path): Reorganize to short circuit to DOS path
handling whenever a '\' is detected.
* signal.cc (sigaction): Make strace output more informative.
* sigproc.cc (pending_signals::add): Just index directly into signal array
rather than treating the array as a heap.
(pending_signals::del): Ditto.
(wait_sig): Don't send signal if we already have a similar signal queued.
* sigproc.h (call_signal_handler_now): Remove obsolete declaration.
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) { |