aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/decompressor.cpp
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2011-06-25 21:15:34 +0200
committerWillem Jan Palenstijn2011-06-25 21:16:12 +0200
commitbc4691a23e0ff1ff6f2452d7ad5d4cd612ad06a1 (patch)
tree57ad3d5c6c398dfebd61d8dc04c70f9b32fe621d /engines/sci/decompressor.cpp
parent4cbf30a88ca3cadb6f28a525f95578146d91037a (diff)
downloadscummvm-rg350-bc4691a23e0ff1ff6f2452d7ad5d4cd612ad06a1.tar.gz
scummvm-rg350-bc4691a23e0ff1ff6f2452d7ad5d4cd612ad06a1.tar.bz2
scummvm-rg350-bc4691a23e0ff1ff6f2452d7ad5d4cd612ad06a1.zip
SCI: Fix incorrect usage of sizeof
Thanks to salty-horse for the reports.
Diffstat (limited to 'engines/sci/decompressor.cpp')
-rw-r--r--engines/sci/decompressor.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/engines/sci/decompressor.cpp b/engines/sci/decompressor.cpp
index 7e7acab994..82af6eca43 100644
--- a/engines/sci/decompressor.cpp
+++ b/engines/sci/decompressor.cpp
@@ -257,7 +257,8 @@ int DecompressorLZW::unpackLZW1(Common::ReadStream *src, byte *dest, uint32 nPac
init(src, dest, nPacked, nUnpacked);
byte *stak = (byte *)malloc(0x1014);
- Tokenlist *tokens = (Tokenlist *)malloc(0x1004 * sizeof(Tokenlist));
+ unsigned int tokensSize = 0x1004 * sizeof(Tokenlist);
+ Tokenlist *tokens = (Tokenlist *)malloc(tokensSize);
if (!stak || !tokens) {
free(stak);
free(tokens);
@@ -265,7 +266,7 @@ int DecompressorLZW::unpackLZW1(Common::ReadStream *src, byte *dest, uint32 nPac
error("[DecompressorLZW::unpackLZW1] Cannot allocate decompression buffers");
}
- memset(tokens, 0, sizeof(tokens));
+ memset(tokens, 0, tokensSize);
byte lastchar = 0;
uint16 stakptr = 0, lastbits = 0;