From 7aefc1596dd41465005dc9d7569a0ff6caa4a118 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Wed, 30 Apr 2008 09:51:38 +0000 Subject: * dtable.cc (dtable::release): Drop fixup_before handling. (dtable::fixup_before_fork): Remove. (dtable::fixup_before_exec): Remove. * dtable.h (class dtable): Remove cnt_need_fixup_before member. (dtable::dtable): Accommodate above change. (dtable::dec_need_fixup_before): Remove. (dtable::inc_need_fixup_before): Remove. (dtable::need_fixup_before): Remove. (dtable::fixup_before_exec): Remove declaration. (dtable::fixup_before_fork): Ditto. * fhandler.h (fhandler_base::fixup_before_fork_exec): Remove. (fhandler_base::need_fixup_before): Remove. * fork.cc (frok::parent): Drop fixup_before handling. * spawn.cc (spawn_guts): Ditto. --- winsup/cygwin/fork.cc | 15 --------------- 1 file changed, 15 deletions(-) (limited to 'winsup/cygwin/fork.cc') diff --git a/winsup/cygwin/fork.cc b/winsup/cygwin/fork.cc index fa80c6922..742f1e7f8 100644 --- a/winsup/cygwin/fork.cc +++ b/winsup/cygwin/fork.cc @@ -310,13 +310,6 @@ frok::parent (volatile char * volatile stack_here) else c_flags |= DETACHED_PROCESS; - /* Some file types (currently only sockets) need extra effort in the - parent after CreateProcess and before copying the datastructures - to the child. So we have to start the child in suspend state, - unfortunately, to avoid a race condition. */ - if (cygheap->fdtab.need_fixup_before ()) - c_flags |= CREATE_SUSPENDED; - /* Remember the address of the first loaded dll and decide if we need to load dlls. We do this here so that this information will be available in the parent and, when @@ -389,14 +382,6 @@ frok::parent (volatile char * volatile stack_here) goto cleanup; } - /* Fixup the parent datastructure if needed and resume the child's - main thread. */ - if (c_flags & CREATE_SUSPENDED) - { - cygheap->fdtab.fixup_before_fork (pi.dwProcessId); - ResumeThread (pi.hThread); - } - CloseHandle (pi.hThread); /* Protect the handle but name it similarly to the way it will -- cgit v1.2.3