summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/sigproc.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2002-10-10 05:23:23 +0000
committerChristopher Faylor <me@cgf.cx>2002-10-10 05:23:23 +0000
commit2a3bf3e2cee2ddce5d6f6951d948a307260015e8 (patch)
treec3e307f111eff877f7af4852813f85289245c36e /winsup/cygwin/sigproc.cc
parentc4ec64d76b9650b92d4c9f566fbac788c2d3fd46 (diff)
downloadcygnal-2a3bf3e2cee2ddce5d6f6951d948a307260015e8.tar.gz
cygnal-2a3bf3e2cee2ddce5d6f6951d948a307260015e8.tar.bz2
cygnal-2a3bf3e2cee2ddce5d6f6951d948a307260015e8.zip
* Makefile.in (new-cygwin1.dll): Reorganize library order.
* dcrt0.cc (do_exit): Move thread stuff after vfork stuff or threads are terminated during vfork. * sigproc.cc (proc_terminate): Grab proc lock prior to signalling subproc thread exit to avoid an extra "wait-for-thread-to-exit".
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r--winsup/cygwin/sigproc.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc
index 8cc459c1c..db5626b89 100644
--- a/winsup/cygwin/sigproc.cc
+++ b/winsup/cygwin/sigproc.cc
@@ -457,10 +457,10 @@ proc_terminate (void)
if (hwait_subproc)
{
proc_loop_wait = 0; // Tell wait_subproc thread to exit
+ sync_proc_subproc->acquire (WPSP);
wake_wait_subproc (); // Wake wait_subproc loop
hwait_subproc = NULL;
- sync_proc_subproc->acquire (WPSP);
(void) proc_subproc (PROC_CLEARWAIT, 1);
/* Clean out zombie processes from the pid list. */