From b7ddc7bc5765328f81628bb6b5e7083a0101971e Mon Sep 17 00:00:00 2001 From: Max Horn Date: Mon, 9 Jun 2003 01:32:36 +0000 Subject: allow quit during smush playback; cleanup svn-id: r8411 --- scumm/gfx.cpp | 2 +- scumm/scummvm.cpp | 6 +++++- scumm/smush/smush_player.cpp | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) (limited to 'scumm') diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp index c7655ac517..a499c148a6 100644 --- a/scumm/gfx.cpp +++ b/scumm/gfx.cpp @@ -2313,7 +2313,7 @@ void Scumm::dissolveEffect(int width, int height) { w = vs->width / width; h = vs->height / height; - // When used used correctly, vs->width % width and vs->height % height + // When used correctly, vs->width % width and vs->height % height // should both be zero, but just to be safe... if (vs->width % width) diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp index 86a12cb004..de2d7fb9b2 100644 --- a/scumm/scummvm.cpp +++ b/scumm/scummvm.cpp @@ -1123,6 +1123,9 @@ load_game: checkExecVerbs(); checkAndRunSentenceScript(); + if (_quit) + return 0; + // HACK: If a load was requested, immediately perform it. This avoids // drawing the current room right after the load is request but before // it is performed. That was annoying esp. if you loaded while a SMUSH @@ -2253,7 +2256,7 @@ void Scumm::waitForTimer(int msec_delay) { start_time = _system->get_msecs(); - for (;;) { + while (!_quit) { parseEvents(); _sound->updateCD(); // Loop CD Audio if needed @@ -2335,6 +2338,7 @@ void Scumm::parseEvents() { case OSystem::EVENT_QUIT: _quit = true; + _videoFinished = true; break; default: diff --git a/scumm/smush/smush_player.cpp b/scumm/smush/smush_player.cpp index 92fce74919..5cac54780e 100644 --- a/scumm/smush/smush_player.cpp +++ b/scumm/smush/smush_player.cpp @@ -280,7 +280,7 @@ void SmushPlayer::deinit() { _scumm->_imuseDigital->pause(false); } _scumm->_sound->pauseBundleMusic(false); - _scumm->_fullRedraw = 1; + _scumm->_fullRedraw = true; } void SmushPlayer::checkBlock(const Chunk &b, Chunk::type type_expected, uint32 min_size) { -- cgit v1.2.3