* sigproc.cc (child_info::sync): Report on exit code in strace output.

(child_info::proc_retry): Don't consider STATUS_ACCESS_VIOLATION as a
restartable event.
This commit is contained in:
Christopher Faylor 2011-11-03 21:44:05 +00:00
parent 277753c80e
commit f4bb53c4e0
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2011-11-03 Christopher Faylor <me.cygwin2011@cgf.cx>
* sigproc.cc (child_info::sync): Report on exit code in strace output.
(child_info::proc_retry): Don't consider STATUS_ACCESS_VIOLATION as a
restartable event.
2011-11-03 Christopher Faylor <me.cygwin2011@cgf.cx> 2011-11-03 Christopher Faylor <me.cygwin2011@cgf.cx>
* sigproc.cc (child_info_spawn::reattach_children): Avoid issuing an * sigproc.cc (child_info_spawn::reattach_children): Avoid issuing an

View File

@ -936,7 +936,8 @@ child_info::sync (pid_t pid, HANDLE& hProcess, DWORD howlong)
hProcess = NULL; hProcess = NULL;
} }
} }
sigproc_printf ("pid %u, WFMO returned %d, res %d", pid, x, res); sigproc_printf ("pid %u, WFMO returned %d, exit_code %p, res %d", pid, x,
exit_code, res);
} }
return res; return res;
} }
@ -946,13 +947,14 @@ child_info::proc_retry (HANDLE h)
{ {
if (!exit_code) if (!exit_code)
return EXITCODE_OK; return EXITCODE_OK;
sigproc_printf ("exit_code %p", exit_code);
switch (exit_code) switch (exit_code)
{ {
case STILL_ACTIVE: /* shouldn't happen */ case STILL_ACTIVE: /* shouldn't happen */
sigproc_printf ("STILL_ACTIVE? How'd we get here?"); sigproc_printf ("STILL_ACTIVE? How'd we get here?");
break; break;
case STATUS_DLL_NOT_FOUND: case STATUS_DLL_NOT_FOUND:
return exit_code; case STATUS_ACCESS_VIOLATION:
case STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION: /* pseudo-reloc.c specific */ case STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION: /* pseudo-reloc.c specific */
return exit_code; return exit_code;
case STATUS_CONTROL_C_EXIT: case STATUS_CONTROL_C_EXIT: