From 409cae2c080295dc4b0e87af76da8ff7e3206ff7 Mon Sep 17 00:00:00 2001 From: Edgar Simo Date: Fri, 12 Dec 2008 15:51:57 +0000 Subject: [PATCH] Some error checking when destroying the HelperWindow. --- src/video/win32/SDL_win32window.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/video/win32/SDL_win32window.c b/src/video/win32/SDL_win32window.c index a5ab18780..f7b7deb49 100644 --- a/src/video/win32/SDL_win32window.c +++ b/src/video/win32/SDL_win32window.c @@ -522,15 +522,25 @@ SDL_HelperWindowCreate(void) void SDL_HelperWindowDestroy(void) { + HINSTANCE hInstance = GetModuleHandleA(NULL); + /* Destroy the window. */ - if (SDL_HelperWindow) { - DestroyWindow(SDL_HelperWindow); + if (SDL_HelperWindow != NULL) { + if (DestroyWindow(SDL_HelperWindow) == 0) { + SDL_SetError("Unable to destroy Helper Window: error %d.", + GetLastError()); + return; + } SDL_HelperWindow = NULL; } /* Unregister the class. */ - if (SDL_HelperWindowClass) { - UnregisterClass(SDL_HelperWindowClassName, GetModuleHandleA(NULL)); + if (SDL_HelperWindowClass != 0) { + if ((UnregisterClass(SDL_HelperWindowClassName, hInstance)) == 0) { + SDL_SetError("Unable to destroy Helper Window Class: error %d.", + GetLastError()); + return; + } SDL_HelperWindowClass = 0; } }