diff src/video/ataricommon/SDL_atarigl.c @ 1238:1901fea5edac

Load default OpenGL library if needed at driver initialization
author Patrice Mandin <patmandin@gmail.com>
date Sun, 08 Jan 2006 10:22:27 +0000
parents 2ab1cb02a44e
children cbdb2c156aca
line wrap: on
line diff
--- 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);