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>2004-03-12 05:07:39 +0300
committerChristopher Faylor <me@cgf.cx>2004-03-12 05:07:39 +0300
commit7ea8e226ee52772fed5215f5231b379db5498bd2 (patch)
treee20f116cb946ae70a6e39729d2fd3f27c1c660b5 /winsup/cygwin/cygtls.cc
parent2c4ef10a55620db807d6138acaac028f61d0e383 (diff)
* cygtls.cc (_cygtls::fixup_after_fork): Remove unneeded setting of oldmask.
* exceptions.cc: Remove some __I386__ conditionals. (handle_exceptions): Move ppid test to outside of a loop for efficiency. (setup_handler): Make debugging output more wordy. (_cygtls::call_signal_handler): To avoid a race, use lock/unlock to synchronize with signal thread and ensure that signal_arrived event has actually been set. * gendef (_sigfe): Use ebx for all sigstack manipulations to ensure that the register is saved. Move setting of incyg to within stack lock to avoid setup_handler confusion. (_sigbe): Use ebx for all sigstack manipulations to ensure that the register is saved. (_cygtls::pop): Ditto. (_cygtls::lock): Ditto. (stabilize_sig_stack): Ditto. (setjmp): Ditto. (longjmp): Ditto.
Diffstat (limited to 'winsup/cygwin/cygtls.cc')
-rw-r--r--winsup/cygwin/cygtls.cc7
1 files changed, 1 insertions, 6 deletions
diff --git a/winsup/cygwin/cygtls.cc b/winsup/cygwin/cygtls.cc
index 89e21d473..2c01acb00 100644
--- a/winsup/cygwin/cygtls.cc
+++ b/winsup/cygwin/cygtls.cc
@@ -138,12 +138,7 @@ _cygtls::init_thread (void *x, DWORD (*func) (void *, void *))
void
_cygtls::fixup_after_fork ()
{
- if (sig)
- {
- set_signal_mask (oldmask);
- sig = 0;
- }
- stacklock = 0;
+ sig = stacklock = 0;
stackptr = stack + 1; // FIXME?
#ifdef DEBUGGING
memset (stackptr, 0, sizeof (stack) - sizeof (stack[0]));