[PATCH 1/4] uxtheme: Check only the lower 16 bits of the return value of WM_ERASEBKGND.
call_dialog_proc16() truncates the return values from 16-bit application window procedures to 16 bits. Since WINPROC_CallDlgProcA() is not available in uxtheme, CallWindowProcW() is used instead and the higher bits should be ignored as well. Wine-Bug-Id: https://bugs.winehq.org/show_bug.cgi?id=52713 Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> --- dlls/uxtheme/dialog.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/uxtheme/dialog.c b/dlls/uxtheme/dialog.c index b91e20f0f33..706d170936e 100644 --- a/dlls/uxtheme/dialog.c +++ b/dlls/uxtheme/dialog.c @@ -129,7 +129,7 @@ LRESULT WINAPI UXTHEME_DefDlgProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp, BOO case WM_ERASEBKGND: { dlgproc = (WNDPROC)GetWindowLongPtrW(hwnd, DWLP_DLGPROC); - lr = CallWindowProcW(dlgproc, hwnd, msg, wp, lp); + lr = LOWORD(CallWindowProcW(dlgproc, hwnd, msg, wp, lp)); if (lr) return lr; -- 2.32.0
participants (1)
-
Zhiyi Zhang