diff options
Diffstat (limited to 'engines/sky/intro.cpp')
-rw-r--r-- | engines/sky/intro.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/sky/intro.cpp b/engines/sky/intro.cpp index 86e26309c9..024360561c 100644 --- a/engines/sky/intro.cpp +++ b/engines/sky/intro.cpp @@ -636,10 +636,14 @@ Intro::Intro(Disk *disk, Screen *screen, MusicBase *music, Sound *sound, Text *t _textBuf = (uint8*)malloc(10000); _saveBuf = (uint8*)malloc(10000); _bgBuf = NULL; + _quitProg = false; _relDelay = 0; } Intro::~Intro(void) { + + _mixer->stopAll(); + _skyScreen->stopSequence(); if (_textBuf) free(_textBuf); if (_saveBuf) @@ -908,7 +912,8 @@ bool Intro::escDelay(uint32 msecs) { if (event.type == Common::EVENT_KEYDOWN) { if (event.kbd.keycode == Common::KEYCODE_ESCAPE) return false; - } else if (event.type == Common::EVENT_QUIT || event.type == Common::EVENT_RTL) { + } else if (event.type == Common::EVENT_QUIT) { + _quitProg = true; return false; } } |