aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2016-10-28 10:02:34 +0200
committerEugene Sandulenko2016-10-29 08:07:19 -0700
commitf2251c0d71cec801af6ec1019dcf21ac25b76462 (patch)
treea5b6e2625002d7be52001eba753d65468df2cd10
parent3ae52a61afe2790bfd56c7eae8e06bcef52d926b (diff)
downloadscummvm-rg350-f2251c0d71cec801af6ec1019dcf21ac25b76462.tar.gz
scummvm-rg350-f2251c0d71cec801af6ec1019dcf21ac25b76462.tar.bz2
scummvm-rg350-f2251c0d71cec801af6ec1019dcf21ac25b76462.zip
DIRECTOR: Fixing Score reading in RIFX format
-rw-r--r--engines/director/score.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index 7b03ca1a7d..0c0527c289 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -263,6 +263,7 @@ void Score::loadFrames(Common::SeekableSubReadStreamEndian &stream) {
if (_vm->getVersion() > 3) {
stream.skip(16);
+ size -= 16;
warning("STUB: Score::loadFrames. Skipping initial bytes");
//Unknown, some bytes - constant (refer to contuinity).
@@ -286,8 +287,8 @@ void Score::loadFrames(Common::SeekableSubReadStreamEndian &stream) {
channelOffset = stream.readByte() * 2;
frameSize -= channelSize + 2;
} else {
- channelSize = stream.readByte();
- channelOffset = stream.readByte();
+ channelSize = stream.readUint16();
+ channelOffset = stream.readUint16();
frameSize -= channelSize + 4;
}
frame->readChannel(stream, channelOffset, channelSize);