# HG changeset patch # User Patrice Mandin # Date 1136715747 0 # Node ID 1901fea5edac3693dd7468b05921055699fb6d68 # Parent a8068adf156bfaf09c5bbe732ac368c495705d91 Load default OpenGL library if needed at driver initialization diff -r a8068adf156b -r 1901fea5edac src/video/ataricommon/SDL_atarigl.c --- a/src/video/ataricommon/SDL_atarigl.c Fri Jan 06 22:24:09 2006 +0000 +++ b/src/video/ataricommon/SDL_atarigl.c Sun Jan 08 10:22:27 2006 +0000 @@ -134,11 +134,21 @@ return -1; } - /* Unload previous driver */ - SDL_AtariGL_UnloadLibrary(this); + /* Driver already loaded ? */ + if (this->gl_config.driver_loaded) { + /* Default path ? don't change anything */ + if (path==NULL) { + return 0; + } + /* Unload previous driver */ + SDL_AtariGL_UnloadLibrary(this); + } /* Load library given by path */ - handle = SDL_LoadObject(path); + handle = NULL + if (path != NULL) { + handle = SDL_LoadObject(path); + } if (handle == NULL) { /* Try to load another one */ path = getenv("SDL_VIDEO_GL_DRIVER"); @@ -398,6 +408,7 @@ if (this->gl_config.dll_handle) { SDL_UnloadObject(this->gl_config.dll_handle); this->gl_config.dll_handle = NULL; + this->gl_config.driver_loaded = 0; /* Restore pointers to static library */ SDL_AtariGL_InitPointers(this); diff -r a8068adf156b -r 1901fea5edac src/video/gem/SDL_gemvideo.c --- a/src/video/gem/SDL_gemvideo.c Fri Jan 06 22:24:09 2006 +0000 +++ b/src/video/gem/SDL_gemvideo.c Sun Jan 08 10:22:27 2006 +0000 @@ -468,6 +468,7 @@ #ifdef HAVE_OPENGL SDL_AtariGL_InitPointers(this); + SDL_AtariGL_LoadLibrary(this, NULL); #endif /* We're done! */ diff -r a8068adf156b -r 1901fea5edac src/video/xbios/SDL_xbios.c --- a/src/video/xbios/SDL_xbios.c Fri Jan 06 22:24:09 2006 +0000 +++ b/src/video/xbios/SDL_xbios.c Sun Jan 08 10:22:27 2006 +0000 @@ -464,6 +464,7 @@ #ifdef HAVE_OPENGL SDL_AtariGL_InitPointers(this); + SDL_AtariGL_LoadLibrary(this, NULL); #endif /* We're done! */