Fixed bug 3061 - Selecting the dummy video driver on Mac OS X results in an error

Darren Kulp

The dummy video driver is not available on Mac OS X if SDL_VIDEO_OPENGL is set at library compilation time.

In src/video/SDL_video.c, there is a compile-time check in SDL_CreateWindow() for (SDL_VIDEO_OPENGL && __MACOSX__). When it succeeds, SDL_WINDOW_OPENGL is always requested. Since the dummy video driver does not supply an OpenGL implementation, the error "No OpenGL support in video driver" is supplied to the user, and SDL_CreateWindow() is exited early.
diff --git a/src/video/SDL_video.c b/src/video/SDL_video.c
index c768f6a..f488e64 100644
--- a/src/video/SDL_video.c
+++ b/src/video/SDL_video.c
@@ -1366,7 +1366,9 @@
 
     /* Some platforms have OpenGL enabled by default */
 #if (SDL_VIDEO_OPENGL && __MACOSX__) || __IPHONEOS__ || __ANDROID__ || __NACL__
-    flags |= SDL_WINDOW_OPENGL;
+    if (SDL_strcmp(_this->name, "dummy") != 0) {
+        flags |= SDL_WINDOW_OPENGL;
+    }
 #endif
     if (flags & SDL_WINDOW_OPENGL) {
         if (!_this->GL_CreateContext) {