From 7ed8ea5d1bbf054182b3fe66ec895a158fb9e1a5 Mon Sep 17 00:00:00 2001 From: pelya Date: Fri, 26 Nov 2010 17:51:39 +0200 Subject: [PATCH] Fixed crash in SDL --- .../src/video/android/SDL_androidvideo-1.2.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/project/jni/sdl-1.2/src/video/android/SDL_androidvideo-1.2.c b/project/jni/sdl-1.2/src/video/android/SDL_androidvideo-1.2.c index ac94d8954..ad994182b 100644 --- a/project/jni/sdl-1.2/src/video/android/SDL_androidvideo-1.2.c +++ b/project/jni/sdl-1.2/src/video/android/SDL_androidvideo-1.2.c @@ -371,13 +371,17 @@ void ANDROID_VideoQuit(_THIS) HwSurfaceList = NULL; DEBUGOUT("ANDROID_VideoQuit() out HwSurfaceCount %d HwSurfaceList %p", HwSurfaceCount, HwSurfaceList); - if( SDL_CurrentVideoSurface->hwdata ) - SDL_DestroyTexture((struct SDL_Texture *)SDL_CurrentVideoSurface->hwdata); - if( SDL_CurrentVideoSurface->pixels ) - SDL_free(SDL_CurrentVideoSurface->pixels); - SDL_CurrentVideoSurface->pixels = NULL; + if( SDL_CurrentVideoSurface ) + { + if( SDL_CurrentVideoSurface->hwdata ) + SDL_DestroyTexture((struct SDL_Texture *)SDL_CurrentVideoSurface->hwdata); + if( SDL_CurrentVideoSurface->pixels ) + SDL_free(SDL_CurrentVideoSurface->pixels); + SDL_CurrentVideoSurface->pixels = NULL; + } SDL_CurrentVideoSurface = NULL; - SDL_DestroyWindow(SDL_VideoWindow); + if(SDL_VideoWindow) + SDL_DestroyWindow(SDL_VideoWindow); SDL_VideoWindow = NULL; }