From 7de3efd050310e802a1a676474d6b18ff1c84652 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Tue, 10 Sep 2024 15:40:44 +0200 Subject: [PATCH] Revert "never return FALSE from peekmessage to avoid issues" This reverts commit 89d38454733b115f743c98a94922bb5f2527830f. --- src/winapi_hooks.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/winapi_hooks.c b/src/winapi_hooks.c index a7e22cc..8d8d8b5 100644 --- a/src/winapi_hooks.c +++ b/src/winapi_hooks.c @@ -612,7 +612,7 @@ HHOOK WINAPI fake_SetWindowsHookExA(int idHook, HOOKPROC lpfn, HINSTANCE hmod, D return result; } -void HandleMessage(LPMSG lpMsg, HWND hWnd) +BOOL HandleMessage(LPMSG lpMsg, HWND hWnd) { if (lpMsg && g_ddraw.ref && g_ddraw.hwnd && g_ddraw.width && !g_config.fixmousehook) { @@ -637,7 +637,7 @@ void HandleMessage(LPMSG lpMsg, HWND hWnd) } if (lpMsg->hwnd != g_ddraw.hwnd) - return; + return TRUE; switch (LOWORD(lpMsg->message)) { @@ -653,6 +653,7 @@ void HandleMessage(LPMSG lpMsg, HWND hWnd) mouse_lock(); lpMsg->message = (UINT)MAKELONG(WM_NULL, HIWORD(lpMsg->message)); + return FALSE; } break; @@ -675,12 +676,15 @@ void HandleMessage(LPMSG lpMsg, HWND hWnd) { // Does not work with 'New Robinson' lpMsg->message = (UINT)MAKELONG(WM_NULL, HIWORD(lpMsg->message)); + return FALSE; } break; } } } + + return TRUE; } BOOL WINAPI fake_GetMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax) @@ -705,7 +709,7 @@ BOOL WINAPI fake_PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT w BOOL result = real_PeekMessageA(lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg); if (result) { - HandleMessage(lpMsg, hWnd); + return HandleMessage(lpMsg, hWnd); } return result;