[Tux4kids-commits] r1047 - tuxmath/trunk/src

B. Luchen cheezmeister-guest at alioth.debian.org
Mon Jun 15 01:58:25 UTC 2009


Author: cheezmeister-guest
Date: 2009-06-15 01:58:25 +0000 (Mon, 15 Jun 2009)
New Revision: 1047

Modified:
   tuxmath/trunk/src/SDL_extras.c
Log:
small cleanup/fix in SwitchScreenModes

Modified: tuxmath/trunk/src/SDL_extras.c
===================================================================
--- tuxmath/trunk/src/SDL_extras.c	2009-06-14 12:50:28 UTC (rev 1046)
+++ tuxmath/trunk/src/SDL_extras.c	2009-06-15 01:58:25 UTC (rev 1047)
@@ -423,20 +423,20 @@
 
   if (!window)
   {
-    screen = SDL_SetVideoMode(fs_res_x,
-                              fs_res_y,
-                              PIXEL_BITS,
-                              SDL_SWSURFACE|SDL_HWPALETTE|SDL_FULLSCREEN);
+    RES_X = fs_res_x;
+    RES_Y = fs_res_y;
   }
   else
   {
-    screen = SDL_SetVideoMode(640,
-                              480,
-                              PIXEL_BITS,
-                              SDL_SWSURFACE|SDL_HWPALETTE);
-
+    RES_X = 640;
+    RES_Y = 480;
   }
 
+  screen = SDL_SetVideoMode(RES_X,
+                            RES_Y,
+                            PIXEL_BITS,
+                            screen->flags ^ SDL_FULLSCREEN);
+
   if (screen == NULL)
   {
     fprintf(stderr,
@@ -446,21 +446,14 @@
             window ? "windowed" : "fullscreen",
             SDL_GetError());
     screen = oldscreen;
+    RES_X = screen->w;
+    RES_Y = screen->h;
   }
   else
   {
-    SDL_FreeSurface(oldscreen);
+    //success, no need to free the old video surface
+    DEBUGMSG(debug_sdl, "Switched screen mode to %s\n", window ? "windowed" : "fullscreen");
     oldscreen = NULL;
-    if(!window)
-    {
-      RES_X = fs_res_x;
-      RES_Y = fs_res_y;
-    }
-    else
-    {
-      RES_X = 640;
-      RES_Y = 480;
-    }
     SDL_UpdateRect(screen, 0, 0, 0, 0);
   }
 




More information about the Tux4kids-commits mailing list