Browse Source

Fix DefWindowProc called for events handled in WIN_WindowProc

Daniel Ludwig 4 months ago
parent
commit
ef5b1c8f5f
1 changed files with 2 additions and 4 deletions
  1. 2 4
      src/video/windows/SDL_windowswindow.c

+ 2 - 4
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