diff options
-rw-r--r-- | engines/mohawk/video/cinepak.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/mohawk/video/cinepak.cpp b/engines/mohawk/video/cinepak.cpp index 48883ceab9..2ffe6869ae 100644 --- a/engines/mohawk/video/cinepak.cpp +++ b/engines/mohawk/video/cinepak.cpp @@ -114,7 +114,10 @@ Graphics::Surface *CinepakDecoder::decodeImage(Common::SeekableReadStream *strea if (stream->eos()) break; - uint32 chunkSize = (stream->readByte() << 16) + stream->readUint16BE() - 4; // 24bit + // Chunk Size is 24-bit, ignore the first 4 bytes + uint32 chunkSize = stream->readByte() << 16; + chunkSize += stream->readUint16BE() - 4; + int32 startPos = stream->pos(); switch (chunkID) { |