aboutsummaryrefslogtreecommitdiff
path: root/engines/cine
diff options
context:
space:
mode:
authorChristopher Page2008-05-27 23:26:48 +0000
committerChristopher Page2008-05-27 23:26:48 +0000
commit17b0144402a9e74c51ba6d2c6e223f67adf03e59 (patch)
treea1ee8ac242c2cc315c5cd0b8e5499ac551e2f314 /engines/cine
parent369f7b0d083cf78a8d00310f2e35013717ff09fc (diff)
downloadscummvm-rg350-17b0144402a9e74c51ba6d2c6e223f67adf03e59.tar.gz
scummvm-rg350-17b0144402a9e74c51ba6d2c6e223f67adf03e59.tar.bz2
scummvm-rg350-17b0144402a9e74c51ba6d2c6e223f67adf03e59.zip
CINE: Fixed two memory leaks when shutting down the CINE engine
svn-id: r32332
Diffstat (limited to 'engines/cine')
-rw-r--r--engines/cine/cine.cpp4
-rw-r--r--engines/cine/sound.cpp1
2 files changed, 4 insertions, 1 deletions
diff --git a/engines/cine/cine.cpp b/engines/cine/cine.cpp
index 41dd9be16f..52474d13a9 100644
--- a/engines/cine/cine.cpp
+++ b/engines/cine/cine.cpp
@@ -42,7 +42,6 @@
#include "cine/sound.h"
#include "cine/various.h"
-
namespace Cine {
Sound *g_sound;
@@ -70,6 +69,9 @@ CineEngine::~CineEngine() {
freeErrmessDat();
}
Common::clearAllSpecialDebugLevels();
+
+ free(partBuffer);
+ free(textDataPtr);
}
int CineEngine::init() {
diff --git a/engines/cine/sound.cpp b/engines/cine/sound.cpp
index e808de6922..f26032fe98 100644
--- a/engines/cine/sound.cpp
+++ b/engines/cine/sound.cpp
@@ -249,6 +249,7 @@ AdlibSoundDriver::AdlibSoundDriver(Audio::Mixer *mixer)
AdlibSoundDriver::~AdlibSoundDriver() {
_mixer->stopHandle(_soundHandle);
+ OPLDestroy(_opl);
}
void AdlibSoundDriver::setupChannel(int channel, const byte *data, int instrument, int volume) {