summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/spawn.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/spawn.cc')
-rw-r--r--winsup/cygwin/spawn.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc
index 352e51c87..44bf8ee24 100644
--- a/winsup/cygwin/spawn.cc
+++ b/winsup/cygwin/spawn.cc
@@ -673,7 +673,10 @@ loop:
sigproc_printf ("spawned windows pid %d", pi.dwProcessId);
- synced = ch.sync (pi.dwProcessId, pi.hProcess, INFINITE);
+ if ((mode == _P_DETACH || mode == _P_NOWAIT) && !ch.iscygwin ())
+ synced = false;
+ else
+ synced = ch.sync (pi.dwProcessId, pi.hProcess, INFINITE);
switch (mode)
{