Fix DefWindowProc called for events handled in WIN_WindowProc
This commit is contained in:
committed by
Sam Lantinga
parent
a2ed1a4197
commit
ef5b1c8f5f
@@ -427,16 +427,14 @@ static bool SetupWindowData(SDL_VideoDevice *_this, SDL_Window *window, HWND hwn
|
|||||||
// Set up the window proc function
|
// Set up the window proc function
|
||||||
#ifdef GWLP_WNDPROC
|
#ifdef GWLP_WNDPROC
|
||||||
data->wndproc = (WNDPROC)GetWindowLongPtr(hwnd, GWLP_WNDPROC);
|
data->wndproc = (WNDPROC)GetWindowLongPtr(hwnd, GWLP_WNDPROC);
|
||||||
if (data->wndproc == WIN_WindowProc) {
|
if (data->wndproc == DefWindowProc) {
|
||||||
data->wndproc = NULL;
|
data->wndproc = NULL;
|
||||||
} else {
|
|
||||||
SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR)WIN_WindowProc);
|
SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR)WIN_WindowProc);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
data->wndproc = (WNDPROC)GetWindowLong(hwnd, GWL_WNDPROC);
|
data->wndproc = (WNDPROC)GetWindowLong(hwnd, GWL_WNDPROC);
|
||||||
if (data->wndproc == WIN_WindowProc) {
|
if (data->wndproc == DefWindowProc) {
|
||||||
data->wndproc = NULL;
|
data->wndproc = NULL;
|
||||||
} else {
|
|
||||||
SetWindowLong(hwnd, GWL_WNDPROC, (LONG_PTR)WIN_WindowProc);
|
SetWindowLong(hwnd, GWL_WNDPROC, (LONG_PTR)WIN_WindowProc);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user