* exceptions.cc (setup_handler): Avoid suspending a thread if it in a cygwin

function, in an exception, spinning, or locked.
* gendef (_sigfe): Move incyg setting earlier.
(sigreturn): Set incyg flag to avoid interrupting called cygwin functions.
(sigdelayed): Ditto.
(stabilize_sig_stack): Ditto.
* sigproc.cc (proc_subproc): Don't restore process lock early in exec case.
* cygtls.h: Reorganize fields in _cygtls slightly.
* tlsoffsets.h: Regenerate.
This commit is contained in:
Christopher Faylor
2004-03-09 01:24:08 +00:00
parent 0c378b648e
commit 5fb0fe79eb
6 changed files with 49 additions and 28 deletions

View File

@ -344,7 +344,6 @@ proc_subproc (DWORD what, DWORD val)
pchildren[val]->pid, val, hchildren[val], pchildren[val]->hProcess);
HANDLE h = hchildren[val];
hchildren[val] = pchildren[val]->hProcess; /* Filled out by child */
sync_proc_subproc->release (); // Release the lock ASAP
ForceCloseHandle1 (h, childhProc);
ProtectHandle1 (pchildren[val]->hProcess, childhProc);
rc = 0;