From dccd2abec6c33e0b020ac6ca73f4a74c35833838 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Thu, 23 Mar 2006 15:55:59 +0000 Subject: * sigproc.cc (sigalloc): Don't set SA_RESTART here. * signal.cc (_SA_NORESTART): New flag. (sigaction_worker): New function, derived from sigaction. Don't set internal flags unless called internally. (sigaction): Use sigaction_worker. (signal): Honor new _SA_NORESTART flag. (siginterrupt): Set _SA_NORESTART flag appropriately. Use sigaction_worker to set flags. * include/cygwin/signal.h: Define _SA_INTERNAL_MASK here. --- winsup/cygwin/sigproc.cc | 4 ---- 1 file changed, 4 deletions(-) (limited to 'winsup/cygwin/sigproc.cc') diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 0f927fe89..8de1ff8b9 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -115,10 +115,6 @@ sigalloc () cygheap->sigs = global_sigs = (struct sigaction *) ccalloc (HEAP_SIGS, NSIG, sizeof (struct sigaction)); global_sigs[SIGSTOP].sa_flags = SA_RESTART | SA_NODEFER; - for (int i = 0; i < NSIG; i++) - /* SA_RESTART is set to maintain BSD compatible signal behaviour by default. - This is also compatible with the behaviour of signal(2) in Linux. */ - global_sigs[i].sa_flags = SA_RESTART; } void __stdcall -- cgit v1.2.3