aboutsummaryrefslogtreecommitdiff
path: root/engines/hugo/file_v3d.cpp
diff options
context:
space:
mode:
authorArnaud Boutonné2010-11-09 20:26:12 +0000
committerArnaud Boutonné2010-11-09 20:26:12 +0000
commitd002800b52fb1d9325520a8b95510b974f6139b7 (patch)
treee85670278aee4519280c4f8d182801faf4275903 /engines/hugo/file_v3d.cpp
parent1a85ce8e036a292b3d2569d8044b787e76ce48f9 (diff)
downloadscummvm-rg350-d002800b52fb1d9325520a8b95510b974f6139b7.tar.gz
scummvm-rg350-d002800b52fb1d9325520a8b95510b974f6139b7.tar.bz2
scummvm-rg350-d002800b52fb1d9325520a8b95510b974f6139b7.zip
HUGO: Fix several memory leaks
svn-id: r54168
Diffstat (limited to 'engines/hugo/file_v3d.cpp')
-rw-r--r--engines/hugo/file_v3d.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/engines/hugo/file_v3d.cpp b/engines/hugo/file_v3d.cpp
index e7af41b93f..312e2f7bc2 100644
--- a/engines/hugo/file_v3d.cpp
+++ b/engines/hugo/file_v3d.cpp
@@ -63,16 +63,17 @@ void FileManager_v3d::readBackground(int screenIndex) {
sceneBlock.ob_off = _sceneryArchive1.readUint32LE();
sceneBlock.ob_len = _sceneryArchive1.readUint32LE();
- seq_t dummySeq; // Image sequence structure for Read_pcx
+ seq_t *dummySeq; // Image sequence structure for Read_pcx
if (screenIndex < 20) {
_sceneryArchive1.seek(sceneBlock.scene_off, SEEK_SET);
// Read the image into dummy seq and static dib_a
- readPCX(_sceneryArchive1, &dummySeq, _vm->_screen->getFrontBuffer(), true, _vm->_screenNames[screenIndex]);
+ dummySeq = readPCX(_sceneryArchive1, 0, _vm->_screen->getFrontBuffer(), true, _vm->_screenNames[screenIndex]);
} else {
_sceneryArchive2.seek(sceneBlock.scene_off, SEEK_SET);
// Read the image into dummy seq and static dib_a
- readPCX(_sceneryArchive2, &dummySeq, _vm->_screen->getFrontBuffer(), true, _vm->_screenNames[screenIndex]);
+ dummySeq = readPCX(_sceneryArchive2, 0, _vm->_screen->getFrontBuffer(), true, _vm->_screenNames[screenIndex]);
}
+ free(dummySeq);
}
/**