Clean up have-initialized resources in some failing edge cases.
Maybe fixes Bugzilla #426. --HG-- branch : SDL-1.2 extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%402353
This commit is contained in:
parent
43816f4915
commit
4c8d994db9
1 changed files with 9 additions and 2 deletions
|
@ -483,6 +483,8 @@ static int X11_VideoInit(_THIS, SDL_PixelFormat *vformat)
|
||||||
*/
|
*/
|
||||||
GFX_Display = XOpenDisplay(display);
|
GFX_Display = XOpenDisplay(display);
|
||||||
if ( GFX_Display == NULL ) {
|
if ( GFX_Display == NULL ) {
|
||||||
|
XCloseDisplay(SDL_Display);
|
||||||
|
SDL_Display = NULL;
|
||||||
SDL_SetError("Couldn't open X11 display");
|
SDL_SetError("Couldn't open X11 display");
|
||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
|
@ -508,8 +510,13 @@ static int X11_VideoInit(_THIS, SDL_PixelFormat *vformat)
|
||||||
#endif /* NO_SHARED_MEMORY */
|
#endif /* NO_SHARED_MEMORY */
|
||||||
|
|
||||||
/* Get the available video modes */
|
/* Get the available video modes */
|
||||||
if(X11_GetVideoModes(this) < 0)
|
if(X11_GetVideoModes(this) < 0) {
|
||||||
|
XCloseDisplay(GFX_Display);
|
||||||
|
GFX_Display = NULL;
|
||||||
|
XCloseDisplay(SDL_Display);
|
||||||
|
SDL_Display = NULL;
|
||||||
return -1;
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
/* Determine the current screen size */
|
/* Determine the current screen size */
|
||||||
this->info.current_w = DisplayWidth(SDL_Display, SDL_Screen);
|
this->info.current_w = DisplayWidth(SDL_Display, SDL_Screen);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue