comparison src/video/x11/SDL_x11dyn.c @ 1171:f84c6f1397cd

Fixed crash when dynamic X11 fails to load system Xlib libraries at runtime.
author Ryan C. Gordon <icculus@icculus.org>
date Thu, 17 Nov 2005 02:35:15 +0000
parents 045f186426e1
children d05306f0dc21
comparison
equal deleted inserted replaced
1170:bb1a52a8d3d6 1171:f84c6f1397cd
102 /* deal with multiple modules (dga, x11, etc) needing these symbols... */ 102 /* deal with multiple modules (dga, x11, etc) needing these symbols... */
103 if (x11_load_refcount++ == 0) { 103 if (x11_load_refcount++ == 0) {
104 #ifdef X11_DYNAMIC 104 #ifdef X11_DYNAMIC
105 x11_handle = SDL_LoadObject(x11_library); 105 x11_handle = SDL_LoadObject(x11_library);
106 x11ext_handle = SDL_LoadObject(x11ext_library); 106 x11ext_handle = SDL_LoadObject(x11ext_library);
107 if ((x11_handle != NULL) && (x11ext_handle != NULL)) { 107 rc = ((x11_handle != NULL) && (x11ext_handle != NULL));
108 #define SDL_X11_SYM(r,fn,arg) p##fn = X11_GetSym(#fn, &rc); 108 #define SDL_X11_SYM(r,fn,arg) p##fn = X11_GetSym(#fn, &rc);
109 #include "SDL_x11sym.h" 109 #include "SDL_x11sym.h"
110 #undef SDL_X11_SYM 110 #undef SDL_X11_SYM
111 }
112 111
113 if (!rc) 112 if (!rc)
114 SDL_X11_UnloadSymbols(); /* in case one of these loaded... */ 113 SDL_X11_UnloadSymbols(); /* in case one of these loaded... */
115 114
116 #else 115 #else