aboutsummaryrefslogtreecommitdiff
path: root/engines/macventure/container.h
diff options
context:
space:
mode:
authorBorja Lorente2016-08-13 16:57:42 +0200
committerBorja Lorente2016-08-19 16:29:17 +0200
commit44a6f8a1dbdfa271aaa9ccf4b1ecc48e275ca11a (patch)
treea71afc88f925667dcd30c75395783abb67d1a5a2 /engines/macventure/container.h
parent479f01b5a708ed1e3294ef1d553d37d270cb97c4 (diff)
downloadscummvm-rg350-44a6f8a1dbdfa271aaa9ccf4b1ecc48e275ca11a.tar.gz
scummvm-rg350-44a6f8a1dbdfa271aaa9ccf4b1ecc48e275ca11a.tar.bz2
scummvm-rg350-44a6f8a1dbdfa271aaa9ccf4b1ecc48e275ca11a.zip
MACVENTURE: Fix minor memory leaks
Diffstat (limited to 'engines/macventure/container.h')
-rw-r--r--engines/macventure/container.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/engines/macventure/container.h b/engines/macventure/container.h
index 013a11dafc..1abab1c6d0 100644
--- a/engines/macventure/container.h
+++ b/engines/macventure/container.h
@@ -52,6 +52,12 @@ public:
_header = _res->readUint32BE();
_simplified = false;
+ for (uint i = 0; i < 16; ++i)
+ _huff.push_back(0);
+
+ for (uint i = 0; i < 16; ++i)
+ _lens.push_back(0);
+
if (!(_header & 0x80000000)) {
// Is simplified container
_simplified = true;
@@ -97,7 +103,8 @@ public:
for (uint j = 0; j < 64; ++j) {
uint32 length = 0;
- uint32 mask = _res->readUint32BE();
+ uint32 mask = 0;
+ mask = _res->readUint32BE();
mask >>= (16 - bits);
mask &= 0xFFFF;
debugC(11, kMVDebugContainer, "Load mask of object &%d:%d is %x", i, j, mask);
@@ -202,8 +209,8 @@ protected:
ContainerHeader _header;
- uint16 _huff[15]; // huffman masks
- uint8 _lens[16]; // huffman lengths
+ Common::Array<uint16> _huff; // huffman masks
+ Common::Array<uint8> _lens; // huffman lengths
Common::Array<ItemGroup> _groups;
Common::String _filename;