Module: wine Branch: master Commit: 7662fe0b47b5365f5092cf005fb43229c1911424 URL: https://source.winehq.org/git/wine.git/?a=commit;h=7662fe0b47b5365f5092cf005...
Author: Zebediah Figura z.figura12@gmail.com Date: Thu Jan 2 11:33:33 2020 -0600
ntdll/tests: Fix some exception test failures.
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntdll/tests/exception.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/dlls/ntdll/tests/exception.c b/dlls/ntdll/tests/exception.c index 44df47466b..7b77cbb795 100644 --- a/dlls/ntdll/tests/exception.c +++ b/dlls/ntdll/tests/exception.c @@ -367,8 +367,9 @@ static LONG CALLBACK rtlraiseexception_vectored_handler(EXCEPTION_POINTERS *Exce trace("vect. handler %08x addr:%p context.Eip:%x\n", rec->ExceptionCode, rec->ExceptionAddress, context->Eip);
- ok(rec->ExceptionAddress == (char *)code_mem + 0xb, "ExceptionAddress at %p instead of %p\n", - rec->ExceptionAddress, (char *)code_mem + 0xb); + ok(rec->ExceptionAddress == (char *)code_mem + 0xb + || broken(rec->ExceptionAddress == code_mem || !rec->ExceptionAddress) /* 2008 */, + "ExceptionAddress at %p instead of %p\n", rec->ExceptionAddress, (char *)code_mem + 0xb);
if (NtCurrentTeb()->Peb->BeingDebugged) ok((void *)context->Eax == pRtlRaiseException || @@ -403,8 +404,9 @@ static DWORD rtlraiseexception_handler( EXCEPTION_RECORD *rec, EXCEPTION_REGISTR trace( "exception: %08x flags:%x addr:%p context: Eip:%x\n", rec->ExceptionCode, rec->ExceptionFlags, rec->ExceptionAddress, context->Eip );
- ok(rec->ExceptionAddress == (char *)code_mem + 0xb, "ExceptionAddress at %p instead of %p\n", - rec->ExceptionAddress, (char *)code_mem + 0xb); + ok(rec->ExceptionAddress == (char *)code_mem + 0xb + || broken(rec->ExceptionAddress == code_mem || !rec->ExceptionAddress) /* 2008 */, + "ExceptionAddress at %p instead of %p\n", rec->ExceptionAddress, (char *)code_mem + 0xb);
ok( context->ContextFlags == CONTEXT_ALL || context->ContextFlags == (CONTEXT_ALL | CONTEXT_XSTATE) || broken(context->ContextFlags == CONTEXT_FULL), /* win2003 */ @@ -515,8 +517,10 @@ static DWORD unwind_handler( EXCEPTION_RECORD *rec, EXCEPTION_REGISTRATION_RECOR
ok(rec->ExceptionCode == STATUS_UNWIND, "ExceptionCode is %08x instead of %08x\n", rec->ExceptionCode, STATUS_UNWIND); - ok(rec->ExceptionAddress == (char *)code_mem + 0x22, "ExceptionAddress at %p instead of %p\n", - rec->ExceptionAddress, (char *)code_mem + 0x22); + ok(rec->ExceptionAddress == (char *)code_mem + 0x22 || broken(TRUE) /* Win10 1709 */, + "ExceptionAddress at %p instead of %p\n", rec->ExceptionAddress, (char *)code_mem + 0x22); + ok(context->Eip == (DWORD)code_mem + 0x22, "context->Eip is %08x instead of %08x\n", + context->Eip, (DWORD)code_mem + 0x22); ok(context->Eax == unwind_expected_eax, "context->Eax is %08x instead of %08x\n", context->Eax, unwind_expected_eax);