From 6127e15f0f9fa8099fbb28bff87010c4267b4807 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Fri, 15 Jan 2021 01:11:07 +0100 Subject: [PATCH] make sure we don't pass any bad coordinates to the games --- src/wndproc.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/wndproc.c b/src/wndproc.c index 9a6cd1b..3577714 100644 --- a/src/wndproc.c +++ b/src/wndproc.c @@ -589,6 +589,15 @@ LRESULT CALLBACK fake_WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam g_ddraw->cursor.y = GET_Y_LPARAM(lParam); } } + + if (GET_X_LPARAM(lParam) > g_ddraw->width || GET_Y_LPARAM(lParam) > g_ddraw->height) + { + g_ddraw->cursor.x = GET_X_LPARAM(lParam) > g_ddraw->width ? g_ddraw->width : GET_X_LPARAM(lParam); + g_ddraw->cursor.y = GET_Y_LPARAM(lParam) > g_ddraw->height ? g_ddraw->height : GET_Y_LPARAM(lParam); + + lParam = MAKELPARAM(g_ddraw->cursor.x, g_ddraw->cursor.y); + } + break; } case WM_PARENTNOTIFY: