summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fork.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/fork.cc')
-rw-r--r--winsup/cygwin/fork.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/winsup/cygwin/fork.cc b/winsup/cygwin/fork.cc
index 2fe73667a..00f296bae 100644
--- a/winsup/cygwin/fork.cc
+++ b/winsup/cygwin/fork.cc
@@ -500,6 +500,13 @@ fork_parent (HANDLE& hParent, dll *&first_dll,
#else
pinfo forked (cygwin_pid (pi.dwProcessId), 1);
#endif
+ if (!forked)
+ {
+ syscall_printf ("pinfo failed");
+ if (get_errno () != ENOMEM)
+ set_errno (EAGAIN);
+ goto cleanup;
+ }
/* Initialize things that are done later in dll_crt0_1 that aren't done
for the forkee. */