From ef5b1c8f5fb7e7d0e6e4249bcc8b5083295dfea7 Mon Sep 17 00:00:00 2001
From: Daniel Ludwig <[EMAIL REDACTED]>
Date: Fri, 7 Nov 2025 11:00:55 +0100
Subject: [PATCH] Fix DefWindowProc called for events handled in WIN_WindowProc
---
src/video/windows/SDL_windowswindow.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/src/video/windows/SDL_windowswindow.c b/src/video/windows/SDL_windowswindow.c
index 02ed14018ce3f..223020d2c66a9 100644
--- a/src/video/windows/SDL_windowswindow.c
+++ b/src/video/windows/SDL_windowswindow.c
@@ -427,16 +427,14 @@ static bool SetupWindowData(SDL_VideoDevice *_this, SDL_Window *window, HWND hwn
// Set up the window proc function
#ifdef GWLP_WNDPROC
data->wndproc = (WNDPROC)GetWindowLongPtr(hwnd, GWLP_WNDPROC);
- if (data->wndproc == WIN_WindowProc) {
+ if (data->wndproc == DefWindowProc) {
data->wndproc = NULL;
- } else {
SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR)WIN_WindowProc);
}
#else
data->wndproc = (WNDPROC)GetWindowLong(hwnd, GWL_WNDPROC);
- if (data->wndproc == WIN_WindowProc) {
+ if (data->wndproc == DefWindowProc) {
data->wndproc = NULL;
- } else {
SetWindowLong(hwnd, GWL_WNDPROC, (LONG_PTR)WIN_WindowProc);
}
#endif