Module: wine Branch: master Commit: c709adcf165711b90a0b06747d58e293b0d5801a URL: http://source.winehq.org/git/wine.git/?a=commit;h=c709adcf165711b90a0b06747d...
Author: Alexandre Julliard julliard@winehq.org Date: Fri Apr 10 12:37:22 2009 +0200
ntdll: Update the context on send_debug_event for any successful status.
---
dlls/ntdll/exception.c | 2 +- dlls/ntdll/tests/exception.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/dlls/ntdll/exception.c b/dlls/ntdll/exception.c index 5399c40..1309b4d 100644 --- a/dlls/ntdll/exception.c +++ b/dlls/ntdll/exception.c @@ -226,7 +226,7 @@ static NTSTATUS send_debug_event( EXCEPTION_RECORD *rec, int first_chance, CONTE ret = wine_server_call( req ); } SERVER_END_REQ; - if (!ret) ret = context_from_server( context, &server_context ); + if (ret >= 0) context_from_server( context, &server_context ); return ret; }
diff --git a/dlls/ntdll/tests/exception.c b/dlls/ntdll/tests/exception.c index 0632f2d..8972b69 100644 --- a/dlls/ntdll/tests/exception.c +++ b/dlls/ntdll/tests/exception.c @@ -206,14 +206,13 @@ 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);
- todo_wine { + todo_wine ok(rec->ExceptionAddress == (char *)code_mem + 0xb, "ExceptionAddress at %p instead of %p\n", rec->ExceptionAddress, (char *)code_mem + 0xb);
if (pNtCurrentTeb()->Peb->BeingDebugged) ok((void *)context->Eax == pRtlRaiseException, "debugger managed to modify Eax to %x should be %p\n", context->Eax, pRtlRaiseException); - }
/* check that context.Eip is fixed up only for EXCEPTION_BREAKPOINT * even if raised by RtlRaiseException