diff --git a/winsup/utils/dumper.cc b/winsup/utils/dumper.cc index 816320e6d..5f8121aa3 100644 --- a/winsup/utils/dumper.cc +++ b/winsup/utils/dumper.cc @@ -615,8 +615,6 @@ out: int dumper::collect_process_information () { - int exception_level = 0; - if (!sane ()) return 0; @@ -631,7 +629,7 @@ dumper::collect_process_information () while (1) { - if (!WaitForDebugEvent (¤t_event, 20000)) + if (!WaitForDebugEvent (¤t_event, INFINITE)) return 0; deb_printf ("got debug event %d\n", current_event.dwDebugEventCode); @@ -675,12 +673,6 @@ dumper::collect_process_information () case EXCEPTION_DEBUG_EVENT: - exception_level++; - if (exception_level == 2) - break; - else if (exception_level > 2) - return 0; - collect_memory_sections (); /* got all info. time to dump */ @@ -697,6 +689,9 @@ dumper::collect_process_information () goto failed; }; + /* We're done */ + goto failed; + break; default: