diff src/video/x11/SDL_x11modes.c @ 4207:a673f44949d6 SDL-1.2

Fixed bug #562 this patch by Diego Pettenò <flameeyes@gentoo.org> for SDL-1.2: The attached patch applies over latest ~arch SDL version, and allows to use the xinerama support to launch an application full screened on the head "0". The SDL_VIDEO_FULLSCREEN_HEAD environment variable sets the head on which the full screen will be displayed, but if you set it to 0, the code simply ignores it as unset. My patch changes the unset value to -1, so that the 0 value can be used correctly. Without this, trying to get fullscreen on head 0 would get the same result than not having xinerama enabled at all. http://sources.gentoo.org/media-libs/libsdl/files/libsdl-1.2.11-xinerama-head-0.patch SDL-1.3 doesnt seem to have any code like this, but it's still good for SDL-1.2
author Sam Lantinga <slouken@libsdl.org>
date Mon, 21 Sep 2009 07:20:51 +0000
parents a1b03ba2fcd0
children 63fd67e17705
line wrap: on
line diff
--- a/src/video/x11/SDL_x11modes.c	Mon Sep 21 07:03:29 2009 +0000
+++ b/src/video/x11/SDL_x11modes.c	Mon Sep 21 07:20:51 2009 +0000
@@ -526,7 +526,7 @@
     /* Query Xinerama extention */
     if ( CheckXinerama(this, &xinerama_major, &xinerama_minor) ) {
         /* Find out which screen is the desired one */
-        int desired = 0;
+        int desired = -1;
         int screens;
         int w, h;
         SDL_NAME(XineramaScreenInfo) *xinerama;
@@ -647,7 +647,7 @@
     /* XVidMode */
     if ( !use_xrandr &&
 #if SDL_VIDEO_DRIVER_X11_XINERAMA
-         (!use_xinerama || xinerama_info.screen_number == 0) &&
+         (!use_xinerama || xinerama_info.screen_number == -1) &&
 #endif
          CheckVidMode(this, &vm_major, &vm_minor) &&
          SDL_NAME(XF86VidModeGetAllModeLines)(SDL_Display, SDL_Screen,&nmodes,&modes) )