diff options
author | Christopher Faylor <me@cgf.cx> | 2012-03-21 15:54:50 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2012-03-21 15:54:50 +0000 |
commit | b7d95b5bb5d62be24509256b486dd34285490e04 (patch) | |
tree | 2b78b1d3efd8d67c3317469bc4dc9972062662f9 /winsup/cygwin/sigproc.cc | |
parent | 5a519b88fab85d6911abbdc019461e4a6190e704 (diff) | |
download | cygnal-b7d95b5bb5d62be24509256b486dd34285490e04.tar.gz cygnal-b7d95b5bb5d62be24509256b486dd34285490e04.tar.bz2 cygnal-b7d95b5bb5d62be24509256b486dd34285490e04.zip |
* child_info.h (child_info::postfork): Define new function.
* fork.cc (frok::parent): Call postfork to do all of the manipulation required
prior to calling pinfo::remember.
* pinfo.h (pinfo::set_rd_proc_pipe): Just set pinfo's rd_proc_pipe. Don't
bother setting it to NULL.
* sigproc.cc (child_info_spawn::wait_for_myself): Call postfork to set up
myself for waiting.
* spawn.cc (child_info_spawn::worker): Avoid now-unnecessary global lock.
Consistently test mode rather than chtype when making wr_proc_pipe decisions.
Call postfork() to set up stuff prior to pinfo::remember.
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r-- | winsup/cygwin/sigproc.cc | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 967a97e3a..dc73765be 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -914,9 +914,7 @@ cygheap_exec_info::alloc () void child_info_spawn::wait_for_myself () { - myself.set_rd_proc_pipe (rd_proc_pipe); - ForceCloseHandle (wr_proc_pipe); - wr_proc_pipe = NULL; + postfork (myself); myself.remember (false); WaitForSingleObject (ev, INFINITE); } |