Jacek Caban : user32: Set %ecx to rect param when calling monitor enum proc.
Alexandre Julliard
julliard at winehq.org
Tue Dec 7 15:58:45 CST 2021
Module: wine
Branch: master
Commit: 66d2321a39f25d3ee9423c20432ce65b45cf1876
URL: https://source.winehq.org/git/wine.git/?a=commit;h=66d2321a39f25d3ee9423c20432ce65b45cf1876
Author: Jacek Caban <jacek at codeweavers.com>
Date: Tue Dec 7 15:28:29 2021 +0100
user32: Set %ecx to rect param when calling monitor enum proc.
This was accidentally removed by 318673405c62.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/user32/sysparams.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/sysparams.c b/dlls/user32/sysparams.c
index 498dbacbd37..bcc9c5cbf07 100644
--- a/dlls/user32/sysparams.c
+++ b/dlls/user32/sysparams.c
@@ -1158,7 +1158,6 @@ BOOL WINAPI GetMonitorInfoW( HMONITOR monitor, LPMONITORINFO info )
#ifdef __i386__
/* Some apps pass a non-stdcall callback to EnumDisplayMonitors,
* so we need a small assembly wrapper to call it.
- * MJ's Help Diagnostic expects that %ecx contains the address to the rect.
*/
extern BOOL enum_mon_callback_wrapper( void *proc, HMONITOR monitor, HDC hdc, RECT *rect, LPARAM lparam );
__ASM_GLOBAL_FUNC( enum_mon_callback_wrapper,
@@ -1169,7 +1168,9 @@ __ASM_GLOBAL_FUNC( enum_mon_callback_wrapper,
__ASM_CFI(".cfi_def_cfa_register %ebp\n\t")
"subl $8,%esp\n\t"
"pushl 24(%ebp)\n\t" /* lparam */
- "pushl 20(%ebp)\n\t" /* rect */
+ /* MJ's Help Diagnostic expects that %ecx contains the address to the rect. */
+ "movl 20(%ebp),%ecx\n\t" /* rect */
+ "pushl %ecx\n\t"
"pushl 16(%ebp)\n\t" /* hdc */
"pushl 12(%ebp)\n\t" /* monitor */
"movl 8(%ebp),%eax\n" /* proc */
More information about the wine-cvs
mailing list