From 7748c76e35993e433bf46faa37b268055f55626e Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Mon, 8 Jan 2024 10:35:28 +0100 Subject: [PATCH] krnl386: Align the stack before calling the entry point. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56152 --- dlls/krnl386.exe16/kernel16_private.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/krnl386.exe16/kernel16_private.h b/dlls/krnl386.exe16/kernel16_private.h index cd08c40128f..9cf60d068a7 100644 --- a/dlls/krnl386.exe16/kernel16_private.h +++ b/dlls/krnl386.exe16/kernel16_private.h @@ -339,7 +339,8 @@ static inline DWORD stack32_pop( CONTEXT *context ) "pushl %esp\n\t" /* context */ \ "call " __ASM_STDCALL("RtlCaptureContext",4) "\n\t" \ "movl %esp,%esi\n\t" \ - "pushl %esp\n\t" /* context */ \ + "andl $~3,%esp\n\t" \ + "pushl %esi\n\t" /* context */ \ "call " __ASM_STDCALL("__regs_" #name,4) "\n\t" \ "pushl $0\n\t" /* alertable */ \ "pushl %esi\n\t" /* context */ \