From: Paul Gofman pgofman@codeweavers.com
--- dlls/ntdll/tests/exception.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/dlls/ntdll/tests/exception.c b/dlls/ntdll/tests/exception.c index 4bf2e4ec78e..b9d38ef4f0e 100644 --- a/dlls/ntdll/tests/exception.c +++ b/dlls/ntdll/tests/exception.c @@ -10524,10 +10524,13 @@ static void test_copy_context(void) *(DWORD *)((BYTE *)dst + flags_offset) = 0; *(DWORD *)((BYTE *)src + flags_offset) = 0;
- src_xs = (XSTATE *)((BYTE *)src_ex + src_ex->XState.Offset); - memset(src_xs, 0xcc, sizeof(XSTATE)); - src_xs->Mask = 3; - src_xs->CompactionMask = ~(ULONG64)0; + if (flags & 0x40) + { + src_xs = (XSTATE *)((BYTE *)src_ex + src_ex->XState.Offset); + memset(src_xs, 0xcc, sizeof(XSTATE)); + src_xs->Mask = 3; + src_xs->CompactionMask = ~(ULONG64)0; + }
status = pRtlCopyExtendedContext(dst_ex, flags, src_ex); ok(!status, "Got unexpected status %#lx, flags %#lx.\n", status, flags);