aboutsummaryrefslogtreecommitdiff
path: root/base/main.cpp
diff options
context:
space:
mode:
authorJohannes Schickel2009-08-18 15:32:26 +0000
committerJohannes Schickel2009-08-18 15:32:26 +0000
commit5c11ec51bc0e246615874876c913371672a725a3 (patch)
tree62190d12304420b2217e5fea7e883127ccb90413 /base/main.cpp
parentb33b90ecd0468c58b93e13ff80bf6939e97ed7a6 (diff)
downloadscummvm-rg350-5c11ec51bc0e246615874876c913371672a725a3.tar.gz
scummvm-rg350-5c11ec51bc0e246615874876c913371672a725a3.tar.bz2
scummvm-rg350-5c11ec51bc0e246615874876c913371672a725a3.zip
- Destory AudioCDManager singleton after user quits a game, this saves a few bytes memory
- Added FIXME to audiocd.h, concering why destroying the AudioCDManager can not quit CD playback right now svn-id: r43513
Diffstat (limited to 'base/main.cpp')
-rw-r--r--base/main.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/base/main.cpp b/base/main.cpp
index d108512416..f9ebe7ae56 100644
--- a/base/main.cpp
+++ b/base/main.cpp
@@ -45,9 +45,12 @@
#include "common/file.h"
#include "common/fs.h"
#include "common/system.h"
+
#include "gui/GuiManager.h"
#include "gui/message.h"
+#include "sound/audiocd.h"
+
#include "backends/keymapper/keymapper.h"
#if defined(_WIN32_WCE)
@@ -416,6 +419,15 @@ extern "C" int scummvm_main(int argc, const char * const argv[]) {
warning("Could not find any engine capable of running the selected game");
}
+ // We will destory the AudioCDManager singleton here to save some memory.
+ // This will not make the CD audio stop, one would have to enable this:
+ //AudioCD.stop();
+ // but the engine is responsible for stopping CD playback anyway and
+ // this way we catch engines not doing it properly. For some more
+ // information about why AudioCDManager::destroy does not stop the CD
+ // playback read the FIXME in sound/audiocd.h
+ Audio::AudioCDManager::destroy();
+
// reset the graphics to default
setupGraphics(system);
launcherDialog();