[PATCH v2 4/4] winedbg: Print thread names in 'info thread' listing.
Brendan Shanks
bshanks at codeweavers.com
Thu Feb 24 12:34:05 CST 2022
Signed-off-by: Brendan Shanks <bshanks at codeweavers.com>
---
v2: Fix indentation.
programs/winedbg/info.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/programs/winedbg/info.c b/programs/winedbg/info.c
index 3ac00df911d..2b8e377e6f4 100644
--- a/programs/winedbg/info.c
+++ b/programs/winedbg/info.c
@@ -589,12 +589,14 @@ void info_win32_threads(void)
THREADENTRY32 entry;
BOOL ok;
DWORD lastProcessId = 0;
+ struct dbg_process* p = NULL;
+ struct dbg_thread* t = NULL;
entry.dwSize = sizeof(entry);
ok = Thread32First(snap, &entry);
- dbg_printf("%-8.8s %-8.8s %s (all id:s are in hex)\n",
- "process", "tid", "prio");
+ dbg_printf("%-8.8s %-8.8s %s %s (all IDs are in hex)\n",
+ "process", "tid", "prio", "name");
while (ok)
{
if (entry.th32OwnerProcessID != GetCurrentProcessId())
@@ -605,10 +607,10 @@ void info_win32_threads(void)
*/
if (entry.th32OwnerProcessID != lastProcessId)
{
- struct dbg_process* p = dbg_get_process(entry.th32OwnerProcessID);
PROCESSENTRY32 pcs_entry;
const char* exename;
+ p = dbg_get_process(entry.th32OwnerProcessID);
if (p)
exename = dbg_W2A(p->imageName, -1);
else if (get_process_name(entry.th32OwnerProcessID, &pcs_entry))
@@ -620,9 +622,11 @@ void info_win32_threads(void)
entry.th32OwnerProcessID, p ? " (D)" : "", exename);
lastProcessId = entry.th32OwnerProcessID;
}
- dbg_printf("\t%08lx %4ld%s\n",
+ t = dbg_get_thread(p, entry.th32ThreadID);
+ dbg_printf("\t%08lx %4ld%s %s\n",
entry.th32ThreadID, entry.tpBasePri,
- (entry.th32ThreadID == dbg_curr_tid) ? " <==" : "");
+ (entry.th32ThreadID == dbg_curr_tid) ? " <==" : " ",
+ t ? t->name : "");
}
ok = Thread32Next(snap, &entry);
--
2.34.1
More information about the wine-devel
mailing list