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:
Corinna Vinschen 2016-07-02 12:27:04 +02:00
parent 29600e04e3
commit 9f54ceadae
1 changed files with 1 additions and 4 deletions

View File

@ -352,13 +352,10 @@ report (const char *in_fn, bool multiple)
break;
case STATUS_BREAKPOINT:
if (!isdll)
cont = DBG_EXCEPTION_NOT_HANDLED;
TerminateProcess (hProcess, 0);
break;
}
break;
case CREATE_THREAD_DEBUG_EVENT:
TerminateProcess (hProcess, 0);
break;
case EXIT_PROCESS_DEBUG_EVENT:
print_and_exit:
print_dlls (&dll_list, isdll ? fn_win : NULL, process_fn);