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>2012-03-21 19:54:50 +0400
committerChristopher Faylor <me@cgf.cx>2012-03-21 19:54:50 +0400
commitb7d95b5bb5d62be24509256b486dd34285490e04 (patch)
tree2b78b1d3efd8d67c3317469bc4dc9972062662f9 /winsup/cygwin/sigproc.cc
parent5a519b88fab85d6911abbdc019461e4a6190e704 (diff)
* 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.cc4
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);
}