aboutsummaryrefslogtreecommitdiff
path: root/sky/control.cpp
diff options
context:
space:
mode:
authorRobert Göffringmann2003-07-06 21:33:22 +0000
committerRobert Göffringmann2003-07-06 21:33:22 +0000
commit2061741bd5112e1fbb05c203d45737cbd7d00d80 (patch)
treed982f2e0f059de63538828a08101c968445238a2 /sky/control.cpp
parent8d4fea8c6d052f9f37f7d43c2db8b091a280936e (diff)
downloadscummvm-rg350-2061741bd5112e1fbb05c203d45737cbd7d00d80.tar.gz
scummvm-rg350-2061741bd5112e1fbb05c203d45737cbd7d00d80.tar.bz2
scummvm-rg350-2061741bd5112e1fbb05c203d45737cbd7d00d80.zip
fix bug #766744 (BASS: Crash when quitting while quitting)
svn-id: r8817
Diffstat (limited to 'sky/control.cpp')
-rw-r--r--sky/control.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/sky/control.cpp b/sky/control.cpp
index 42b5815c25..a753d77153 100644
--- a/sky/control.cpp
+++ b/sky/control.cpp
@@ -1450,9 +1450,8 @@ void SkyControl::delay(unsigned int amount) {
break;
case OSystem::EVENT_QUIT:
- showGameQuitMsg(false);
- delay(1500);
- _system->quit();
+ if (!SkyState::_systemVars.quitting)
+ showGameQuitMsg(false);
break;
default:
@@ -1472,6 +1471,7 @@ void SkyControl::delay(unsigned int amount) {
void SkyControl::showGameQuitMsg(bool useScreen) {
+ SkyState::_systemVars.quitting = true;
uint8 *textBuf1 = (uint8*)malloc(GAME_SCREEN_WIDTH * 14 + sizeof(dataFileHeader));
uint8 *textBuf2 = (uint8*)malloc(GAME_SCREEN_WIDTH * 14 + sizeof(dataFileHeader));
uint8 textNum;