Alexandre Julliard : ntdll: Capture the context inside RtlUnwindEx instead of assuming it' s already initialized.
Alexandre Julliard
julliard at winehq.org
Thu Jan 27 12:43:17 CST 2011
Module: wine
Branch: master
Commit: aa4ad6d76613bea8931059982d9a2b9a9e305e28
URL: http://source.winehq.org/git/wine.git/?a=commit;h=aa4ad6d76613bea8931059982d9a2b9a9e305e28
Author: Alexandre Julliard <julliard at winehq.org>
Date: Thu Jan 27 11:51:34 2011 +0100
ntdll: Capture the context inside RtlUnwindEx instead of assuming it's already initialized.
---
dlls/ntdll/signal_x86_64.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c
index d7aafda..ad49411 100644
--- a/dlls/ntdll/signal_x86_64.c
+++ b/dlls/ntdll/signal_x86_64.c
@@ -2783,6 +2783,8 @@ void WINAPI RtlUnwindEx( PVOID end_frame, PVOID target_ip, EXCEPTION_RECORD *rec
NTSTATUS status;
DWORD size;
+ RtlCaptureContext( orig_context );
+
/* build an exception record, if we do not have one */
if (!rec)
{
@@ -2931,12 +2933,11 @@ void WINAPI RtlUnwindEx( PVOID end_frame, PVOID target_ip, EXCEPTION_RECORD *rec
/*******************************************************************
* RtlUnwind (NTDLL.@)
*/
-void WINAPI __regs_RtlUnwind( void *frame, void *target_ip, EXCEPTION_RECORD *rec,
- void *retval, CONTEXT *context )
+void WINAPI RtlUnwind( void *frame, void *target_ip, EXCEPTION_RECORD *rec, void *retval )
{
- RtlUnwindEx( frame, target_ip, rec, retval, context, NULL );
+ CONTEXT context;
+ RtlUnwindEx( frame, target_ip, rec, retval, &context, NULL );
}
-DEFINE_REGS_ENTRYPOINT( RtlUnwind, 4 )
/*******************************************************************
More information about the wine-cvs
mailing list