2011-06-23 Christian Franke * sigproc.cc (child_info::sync): Add exit_code to debug message. (child_info::proc_retry): Don't retry on unknown exit_code from non-cygwin programs. diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 2f42db2..1e57876 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -883,7 +883,8 @@ child_info::sync (pid_t pid, HANDLE& hProcess, DWORD howlong) hProcess = NULL; } } - sigproc_printf ("pid %u, WFMO returned %d, res %d", pid, x, res); + sigproc_printf ("pid %u, WFMO returned %d, exit_code 0x%x, res %d", + pid, x, exit_code, res); } return res; } @@ -915,11 +916,11 @@ child_info::proc_retry (HANDLE h) case EXITCODE_FORK_FAILED: /* windows prevented us from forking */ break; - /* Count down non-recognized exit codes more quickly since they aren't - due to known conditions. */ default: - if (!iscygwin () && (exit_code & 0xffff0000) != 0xc0000000) + if (!iscygwin ()) break; + /* Count down non-recognized exit codes more quickly since they aren't + due to known conditions. */ if ((retry -= 2) < 0) retry = 0; else