ldd: terminate process on hitting breakpoint
So far ldd terminates the inferior process as soon as some thread is started. Apparently threads are started from even ntdll.dll before the main thread of the application is started. As a result the dll list is cut short since ldd terminates prematurely. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
@ -352,13 +352,10 @@ report (const char *in_fn, bool multiple)
|
|||||||
break;
|
break;
|
||||||
case STATUS_BREAKPOINT:
|
case STATUS_BREAKPOINT:
|
||||||
if (!isdll)
|
if (!isdll)
|
||||||
cont = DBG_EXCEPTION_NOT_HANDLED;
|
TerminateProcess (hProcess, 0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CREATE_THREAD_DEBUG_EVENT:
|
|
||||||
TerminateProcess (hProcess, 0);
|
|
||||||
break;
|
|
||||||
case EXIT_PROCESS_DEBUG_EVENT:
|
case EXIT_PROCESS_DEBUG_EVENT:
|
||||||
print_and_exit:
|
print_and_exit:
|
||||||
print_dlls (&dll_list, isdll ? fn_win : NULL, process_fn);
|
print_dlls (&dll_list, isdll ? fn_win : NULL, process_fn);
|
||||||
|
Reference in New Issue
Block a user