From 0bf5e932f3f2c615462bda1ed532f067ff56f44c Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sun, 21 Sep 2003 18:40:51 +0000 Subject: [PATCH] Date: Thu, 18 Sep 2003 14:24:35 -0400 From: Scott Watson Subject: [SDL] Improper Windows message routine calling If this hasn't been caught yet, there's an improper method of calling a user's window message routine in the various SDL_xxevents.c files. Calling it improperly can cause a crash under at least XP. --- src/video/windib/SDL_dibevents.c | 2 +- src/video/windx5/SDL_dx5events.c | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/video/windib/SDL_dibevents.c b/src/video/windib/SDL_dibevents.c index 7e83b6b0b..1d9152227 100644 --- a/src/video/windib/SDL_dibevents.c +++ b/src/video/windib/SDL_dibevents.c @@ -177,7 +177,7 @@ LONG along to any win32 specific window proc. */ } else if (userWindowProc) { - return userWindowProc(hwnd, msg, wParam, lParam); + return CallWindowProc(userWindowProc, hwnd, msg, wParam, lParam); } } break; diff --git a/src/video/windx5/SDL_dx5events.c b/src/video/windx5/SDL_dx5events.c index 4e04735ca..22860fc32 100644 --- a/src/video/windx5/SDL_dx5events.c +++ b/src/video/windx5/SDL_dx5events.c @@ -537,13 +537,13 @@ LONG wmmsg.lParam = lParam; posted = SDL_PrivateSysWMEvent(&wmmsg); - /* DJM: If the user isn't watching for private messages in her - SDL event loop, then pass it along to any win32 specific - window proc. - */ - } else if (userWindowProc) { - return userWindowProc(hwnd, msg, wParam, lParam); - } + /* DJM: If the user isn't watching for private + messages in her SDL event loop, then pass it + along to any win32 specific window proc. + */ + } else if (userWindowProc) { + return CallWindowProc(userWindowProc, hwnd, msg, wParam, lParam); + } } break; }