From 39063e28db853ac87984f445170703f1d60b38c3 Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Fri, 19 Sep 2014 14:35:56 +0000 Subject: [PATCH] [OLEAUT32] - Sync MSVC version of call_method with GCC version. Patch by Timo Kreuzer. svn path=/trunk/; revision=64195 --- reactos/dll/win32/oleaut32/msvc.S | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/reactos/dll/win32/oleaut32/msvc.S b/reactos/dll/win32/oleaut32/msvc.S index 2e6a988f26c..3fbaf6ddf1c 100644 --- a/reactos/dll/win32/oleaut32/msvc.S +++ b/reactos/dll/win32/oleaut32/msvc.S @@ -19,17 +19,21 @@ _call_method: push esi push edi mov edx, dword ptr ds:[ebp + 12] + mov edi, esp shl edx, 2 jz cm1 - sub esp, edx - and esp, HEX(0FFFFFFF0) + sub edi, edx + and edi, HEX(0FFFFFFF0) + mov esp, edi mov ecx, dword ptr ds:[ebp + 12] mov esi, dword ptr ds:[ebp + 16] - mov edi, esp cld rep movsd cm1: call dword ptr ds:[ebp + 8] + sub edi, esp + mov ecx,[ebp + 20] + mov [ecx], edi lea esp, [ebp - 8] pop edi pop esi