Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2006-01-01 19:51:29 +0300
committerChristopher Faylor <me@cgf.cx>2006-01-01 19:51:29 +0300
commita14d65557ae36ff4de926b9bd4cc4010917a09c5 (patch)
tree0c8a55a2def862f9bea23558d886974b70a159b8 /winsup/cygwin/exceptions.cc
parenta89b700926b5b75d62048f1a02b040d4d6f057cf (diff)
* exceptions.cc (_cygtls::interrupt_setup): Implement SA_RESETHAND.
* include/cygwin/signal.h: Define SA_ONESHOT and SA_NOMASK. * dcrt0.cc (get_cygwin_startup_info): Remove commented out code.
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r--winsup/cygwin/exceptions.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc
index 48ea75604..73f5cfd5e 100644
--- a/winsup/cygwin/exceptions.cc
+++ b/winsup/cygwin/exceptions.cc
@@ -744,6 +744,8 @@ _cygtls::interrupt_setup (int sig, void *handler, struct sigaction& siga)
deltamask = siga.sa_mask & ~SIG_NONMASKABLE;
sa_flags = siga.sa_flags;
func = (void (*) (int)) handler;
+ if (siga.sa_flags & SA_RESETHAND)
+ siga.sa_handler = SIG_DFL;
saved_errno = -1; // Flag: no errno to save
if (handler == sig_handle_tty_stop)
{