fixed bug causing crash when playing levels with 'time orb bug'
[rocksndiamonds.git] / src / game.c
index e5e128f8539c9158c916effcb0802c2a015326c6..02331879311f3a7680e95bcd80e3a37148220f0e 100644 (file)
@@ -2308,7 +2308,7 @@ void UpdateGameControlValues()
   game_panel_controls[GAME_PANEL_TIME_MM].value = (time / 60) % 60;
   game_panel_controls[GAME_PANEL_TIME_SS].value = time % 60;
 
-  if (game.no_time_limit)
+  if (level.time == 0)
     game_panel_controls[GAME_PANEL_TIME_ANIM].value = 100;
   else
     game_panel_controls[GAME_PANEL_TIME_ANIM].value = time * 100 / level.time;
@@ -3298,7 +3298,7 @@ void InitGame()
   else
     FadeSetEnterScreen();
 
-  if (CheckIfGlobalBorderHasChanged())
+  if (CheckIfGlobalBorderOrPlayfieldViewportHasChanged())
     fade_mask = REDRAW_ALL;
 
   FadeLevelSoundsAndMusic();
@@ -15787,7 +15787,8 @@ static void HandleGameButtonsExt(int id, int button)
 
        SetAudioMode(setup.sound);
 
-       PlayLevelMusic();
+       if (game_status == GAME_MODE_PLAYING)
+         PlayLevelMusic();
       }
 
       RedrawSoundButtonGadget(id);