diff options
Diffstat (limited to 'src/pal/src/arch/i386/context2.S')
-rw-r--r-- | src/pal/src/arch/i386/context2.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/pal/src/arch/i386/context2.S b/src/pal/src/arch/i386/context2.S index 11aba5e647..6c31b074cc 100644 --- a/src/pal/src/arch/i386/context2.S +++ b/src/pal/src/arch/i386/context2.S @@ -42,6 +42,7 @@ LEAF_ENTRY CONTEXT_CaptureContext, _TEXT mov [eax + CONTEXT_Ebp], ebp lea ebx, [esp + 12] mov [eax + CONTEXT_Esp], ebx + mov [eax + CONTEXT_ResumeEsp], ebx mov ebx, [esp + 8] mov [eax + CONTEXT_Eip], ebx @@ -82,7 +83,7 @@ LOCAL_LABEL(Done_CONTEXT_EXTENDED_REGISTERS): // Restore pop ebx pop eax - ret 4 + ret LEAF_END CONTEXT_CaptureContext, _TEXT LEAF_ENTRY RtlCaptureContext, _TEXT @@ -114,7 +115,7 @@ LOCAL_LABEL(Done_Restore_CONTEXT_FLOATING_POINT): LOCAL_LABEL(Done_Restore_CONTEXT_EXTENDED_REGISTERS): // Restore Stack - mov esp, [eax + CONTEXT_Esp] + mov esp, [eax + CONTEXT_ResumeEsp] // Create a minimal frame push DWORD PTR [eax + CONTEXT_Eip] |