Signed-off-by: Brendan Shanks bshanks@codeweavers.com --- dlls/ntdll/signal_arm.c | 7 ++++++- dlls/ntdll/signal_arm64.c | 7 ++++++- dlls/ntdll/signal_i386.c | 7 ++++++- dlls/ntdll/signal_x86_64.c | 8 ++++++-- 4 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c index 72f3b023e45..fe7b99baa7c 100644 --- a/dlls/ntdll/signal_arm.c +++ b/dlls/ntdll/signal_arm.c @@ -36,6 +36,7 @@ #include "winnt.h"
WINE_DEFAULT_DEBUG_CHANNEL(seh); +WINE_DECLARE_DEBUG_CHANNEL(threadname);
typedef struct _SCOPE_TABLE { @@ -475,7 +476,11 @@ NTSTATUS WINAPI KiUserExceptionDispatcher( EXCEPTION_RECORD *rec, CONTEXT *conte } else if (rec->ExceptionCode == EXCEPTION_WINE_NAME_THREAD && rec->ExceptionInformation[0] == 0x1000) { - WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); + if ((DWORD)rec->ExceptionInformation[2] == -1) + WARN_(threadname)( "Thread renamed to %s\n", debugstr_a((char *)rec->ExceptionInformation[1]) ); + else + WARN_(threadname)( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], + debugstr_a((char *)rec->ExceptionInformation[1]) ); } else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) { diff --git a/dlls/ntdll/signal_arm64.c b/dlls/ntdll/signal_arm64.c index 290639b676b..0340207d199 100644 --- a/dlls/ntdll/signal_arm64.c +++ b/dlls/ntdll/signal_arm64.c @@ -38,6 +38,7 @@ #include "winnt.h"
WINE_DEFAULT_DEBUG_CHANNEL(seh); +WINE_DECLARE_DEBUG_CHANNEL(threadname);
typedef struct _SCOPE_TABLE { @@ -507,7 +508,11 @@ NTSTATUS WINAPI KiUserExceptionDispatcher( EXCEPTION_RECORD *rec, CONTEXT *conte } else if (rec->ExceptionCode == EXCEPTION_WINE_NAME_THREAD && rec->ExceptionInformation[0] == 0x1000) { - WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); + if ((DWORD)rec->ExceptionInformation[2] == -1) + WARN_(threadname)( "Thread renamed to %s\n", debugstr_a((char *)rec->ExceptionInformation[1]) ); + else + WARN_(threadname)( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], + debugstr_a((char *)rec->ExceptionInformation[1]) ); } else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) { diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c index 14971032ce6..d1e2fefe408 100644 --- a/dlls/ntdll/signal_i386.c +++ b/dlls/ntdll/signal_i386.c @@ -35,6 +35,7 @@ #include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(seh); +WINE_DECLARE_DEBUG_CHANNEL(threadname);
struct x86_thread_data { @@ -194,7 +195,11 @@ NTSTATUS WINAPI dispatch_exception( EXCEPTION_RECORD *rec, CONTEXT *context ) } else if (rec->ExceptionCode == EXCEPTION_WINE_NAME_THREAD && rec->ExceptionInformation[0] == 0x1000) { - WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); + if ((DWORD)rec->ExceptionInformation[2] == -1) + WARN_(threadname)( "Thread renamed to %s\n", debugstr_a((char *)rec->ExceptionInformation[1]) ); + else + WARN_(threadname)( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], + debugstr_a((char *)rec->ExceptionInformation[1]) ); } else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) { diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c index e0372b111fd..b99e17d13a7 100644 --- a/dlls/ntdll/signal_x86_64.c +++ b/dlls/ntdll/signal_x86_64.c @@ -36,6 +36,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(unwind); WINE_DECLARE_DEBUG_CHANNEL(seh); +WINE_DECLARE_DEBUG_CHANNEL(threadname);
typedef struct _SCOPE_TABLE { @@ -523,8 +524,11 @@ NTSTATUS WINAPI dispatch_exception( EXCEPTION_RECORD *rec, CONTEXT *context ) } else if (rec->ExceptionCode == EXCEPTION_WINE_NAME_THREAD && rec->ExceptionInformation[0] == 0x1000) { - WARN_(seh)( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], - debugstr_a((char *)rec->ExceptionInformation[1]) ); + if ((DWORD)rec->ExceptionInformation[2] == -1) + WARN_(threadname)( "Thread renamed to %s\n", debugstr_a((char *)rec->ExceptionInformation[1]) ); + else + WARN_(threadname)( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], + debugstr_a((char *)rec->ExceptionInformation[1]) ); } else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) {