aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/director/director.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/engines/director/director.cpp b/engines/director/director.cpp
index ea21986dcc..4df959d05d 100644
--- a/engines/director/director.cpp
+++ b/engines/director/director.cpp
@@ -79,10 +79,14 @@ void DirectorEngine::loadEXE() {
}
void DirectorEngine::loadEXEv3(Common::SeekableReadStream *stream) {
- stream->readUint32LE(); // unknown
- stream->readUint16LE(); // unknown
+ uint16 entryCount = stream->readUint16LE();
+
+ if (entryCount != 1)
+ error("Unhandled multiple entry v3 EXE");
+
+ stream->skip(5); // unknown
+
stream->readUint32LE(); // Main MMM size
- stream->readByte(); // zero
Common::String mmmFileName = readPascalString(*stream);
Common::String directoryName = readPascalString(*stream);