diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c index f4da2e5c71d..1b98dd5cc70 100644 --- a/dlls/ntdll/signal_arm.c +++ b/dlls/ntdll/signal_arm.c @@ -164,6 +164,14 @@ NTSTATUS WINAPI KiUserExceptionDispatcher( EXCEPTION_RECORD *rec, CONTEXT *conte { WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) + { + WARN( "%s\n", debugstr_an((char *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_WIDE_C) + { + WARN( "%s\n", debugstr_wn((WCHAR *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } else { TRACE( " r0=%08x r1=%08x r2=%08x r3=%08x r4=%08x r5=%08x\n", diff --git a/dlls/ntdll/signal_arm64.c b/dlls/ntdll/signal_arm64.c index 88e31d88f7b..078fa947c42 100644 --- a/dlls/ntdll/signal_arm64.c +++ b/dlls/ntdll/signal_arm64.c @@ -505,6 +505,14 @@ NTSTATUS WINAPI KiUserExceptionDispatcher( EXCEPTION_RECORD *rec, CONTEXT *conte { WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) + { + WARN( "%s\n", debugstr_an((char *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_WIDE_C) + { + WARN( "%s\n", debugstr_wn((WCHAR *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } else { TRACE(" x0=%016lx x1=%016lx x2=%016lx x3=%016lx\n", diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c index a570be10024..6ec696931e9 100644 --- a/dlls/ntdll/signal_i386.c +++ b/dlls/ntdll/signal_i386.c @@ -196,6 +196,14 @@ NTSTATUS WINAPI dispatch_exception( EXCEPTION_RECORD *rec, CONTEXT *context ) { WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) + { + WARN( "%s\n", debugstr_an((char *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_WIDE_C) + { + WARN( "%s\n", debugstr_wn((WCHAR *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } else { TRACE(" eax=%08x ebx=%08x ecx=%08x edx=%08x esi=%08x edi=%08x\n", diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c index 7a3fd4be204..df133d6fce9 100644 --- a/dlls/ntdll/signal_x86_64.c +++ b/dlls/ntdll/signal_x86_64.c @@ -542,6 +542,14 @@ NTSTATUS WINAPI dispatch_exception( EXCEPTION_RECORD *rec, CONTEXT *context ) { WARN( "Thread %04x renamed to %s\n", (DWORD)rec->ExceptionInformation[2], debugstr_a((char *)rec->ExceptionInformation[1]) ); } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_C) + { + WARN( "%s\n", debugstr_an((char *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } + else if (rec->ExceptionCode == DBG_PRINTEXCEPTION_WIDE_C) + { + WARN( "%s\n", debugstr_wn((WCHAR *)rec->ExceptionInformation[1], rec->ExceptionInformation[0] - 1) ); + } else { TRACE(" rax=%016lx rbx=%016lx rcx=%016lx rdx=%016lx\n",