From 9f54ceadae4336b83a724bd3370c0c2dcd00b935 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Sat, 2 Jul 2016 12:27:04 +0200 Subject: [PATCH] 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 --- winsup/utils/ldd.cc | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/winsup/utils/ldd.cc b/winsup/utils/ldd.cc index 152119f2e..8a33984d1 100644 --- a/winsup/utils/ldd.cc +++ b/winsup/utils/ldd.cc @@ -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);