Updated winebuild-pe_syscall_thunks patchset.

Fix context eip in NtGetContextThread() on i386.
This commit is contained in:
Paul Gofman 2020-07-15 12:48:37 +03:00
parent 5c4729e4ce
commit 884f646404

View File

@ -1,4 +1,4 @@
From 1ec1266cf05ab1aeaecb5acbc3402da69d0f63b7 Mon Sep 17 00:00:00 2001
From 9604e2ff972e022b0fa10712d3e55580b232f2c2 Mon Sep 17 00:00:00 2001
From: Paul Gofman <pgofman@codeweavers.com>
Date: Tue, 14 Jul 2020 13:31:48 +0300
Subject: [PATCH] ntdll: Fix NtGetContextThread on i386 with PE syscall thunks.
@ -11,7 +11,7 @@ Unix part.
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c
index a130638cb310..e098b3e409b2 100644
index a130638cb310..8f560e51134b 100644
--- a/dlls/ntdll/signal_i386.c
+++ b/dlls/ntdll/signal_i386.c
@@ -331,6 +331,8 @@ __ASM_STDCALL_FUNC( RtlCaptureContext, 4,
@ -32,7 +32,7 @@ index a130638cb310..e098b3e409b2 100644
- context->Eip = (DWORD)NtGetContextThread + 12;
+ context->Ebp = *(DWORD *)ebp;
+ context->Esp = ebp + 4;
+ context->Eip = (DWORD)_syscall_NtGetContextThread + 18;
+ context->Eip = *((DWORD *)ebp + 1);
context->EFlags = eflags;
}
return unix_funcs->NtGetContextThread( handle, context );