diff --git a/dlls/ntdll/unix/signal_i386.c b/dlls/ntdll/unix/signal_i386.c index 0153f772b6d..9e97fd9e298 100644 --- a/dlls/ntdll/unix/signal_i386.c +++ b/dlls/ntdll/unix/signal_i386.c @@ -1254,7 +1254,7 @@ NTSTATUS WINAPI NtSetContextThread( HANDLE handle, const CONTEXT *context ) xsave->xstate.mask |= XSTATE_MASK_GSSE; memcpy( &xsave->xstate.ymm_high, &xs->YmmContext, sizeof(xsave->xstate.ymm_high) ); } - else if (xs->CompactionMask & XSTATE_MASK_GSSE) + else xsave->xstate.mask &= ~XSTATE_MASK_GSSE; } diff --git a/dlls/ntdll/unix/signal_x86_64.c b/dlls/ntdll/unix/signal_x86_64.c index e62e958b4aa..2a030372fb7 100644 --- a/dlls/ntdll/unix/signal_x86_64.c +++ b/dlls/ntdll/unix/signal_x86_64.c @@ -1864,7 +1864,7 @@ NTSTATUS WINAPI NtSetContextThread( HANDLE handle, const CONTEXT *context ) xsave->xstate.Mask |= XSTATE_MASK_GSSE; memcpy( &xsave->xstate.YmmContext, &xs->YmmContext, sizeof(xs->YmmContext) ); } - else if (xs->CompactionMask & XSTATE_MASK_GSSE) + else xsave->xstate.Mask &= ~XSTATE_MASK_GSSE; } return STATUS_SUCCESS;