Alexandre Julliard : ntdll: Set the proper context flags in the signal handlers for x86_64.
Alexandre Julliard
julliard at winehq.org
Thu Apr 9 11:13:49 CDT 2009
Module: wine
Branch: master
Commit: 0865c278f27da7d0a45128caeeed99d090a80ff1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=0865c278f27da7d0a45128caeeed99d090a80ff1
Author: Alexandre Julliard <julliard at winehq.org>
Date: Wed Apr 8 20:40:29 2009 +0200
ntdll: Set the proper context flags in the signal handlers for x86_64.
---
dlls/ntdll/signal_x86_64.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c
index 7a0defa..dfb1b51 100644
--- a/dlls/ntdll/signal_x86_64.c
+++ b/dlls/ntdll/signal_x86_64.c
@@ -189,6 +189,7 @@ static inline int dispatch_signal(unsigned int sig)
*/
static void save_context( CONTEXT *context, const SIGCONTEXT *sigcontext )
{
+ context->ContextFlags = CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS;
context->Rax = RAX_sig(sigcontext);
context->Rcx = RCX_sig(sigcontext);
context->Rdx = RDX_sig(sigcontext);
@@ -214,7 +215,11 @@ static void save_context( CONTEXT *context, const SIGCONTEXT *sigcontext )
context->SegEs = 0; /* FIXME */
context->SegSs = 0; /* FIXME */
context->MxCsr = 0; /* FIXME */
- if (FPU_sig(sigcontext)) context->u.FltSave = *FPU_sig(sigcontext);
+ if (FPU_sig(sigcontext))
+ {
+ context->ContextFlags |= CONTEXT_FLOATING_POINT;
+ context->u.FltSave = *FPU_sig(sigcontext);
+ }
}
More information about the wine-cvs
mailing list