Fixing a bug in the game mode refresh rate specification, in the case in which an...
authorJohn F. Fay <johnffay@nettally.com>
Sun, 13 Mar 2011 21:19:00 +0000 (21:19 +0000)
committerJohn F. Fay <johnffay@nettally.com>
Sun, 13 Mar 2011 21:19:00 +0000 (21:19 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@894 7f0cb862-5218-0410-a997-914c9d46530a

src/freeglut_gamemode.c

index b0194b2..01086b3 100644 (file)
@@ -204,7 +204,7 @@ static void fghRestoreState( void )
 
 #elif TARGET_HOST_MS_WINDOWS
 
-    /* Restore the previously rememebered desktop display settings */
+    /* Restore the previously remembered desktop display settings */
     ChangeDisplaySettingsEx( fgDisplay.DisplayName,&fgDisplay.DisplayMode, 0,0,0 );
 
 #endif
@@ -242,6 +242,15 @@ static int fghCheckDisplayModes( GLboolean exactMatch, int displayModesCount, XF
                                  displayModes[ i ]->vdisplay,
                                  fgState.GameModeDepth,
                                  ( exactMatch ? refresh : fgState.GameModeRefresh ) ) ) {
+            if (!exactMatch)
+            {
+                /* Update the chosen refresh rate, otherwise a
+                 * glutGameModeGet(GLUT_GAME_MODE_REFRESH_RATE) would not
+                 * return the right values
+                 */
+                fgState.GameModeRefresh = refresh;
+            }
+
             return i;
         }
     }