[Scummvm-git-logs] scummvm master -> 413b28682bc161db53b057a88564ed34742ea5f9
djsrv
dservilla at gmail.com
Tue Jul 14 20:56:43 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
413b28682b DIRECTOR: LINGO: Remove unused script handling
Commit: 413b28682bc161db53b057a88564ed34742ea5f9
https://github.com/scummvm/scummvm/commit/413b28682bc161db53b057a88564ed34742ea5f9
Author: djsrv (dservilla at gmail.com)
Date: 2020-07-14T16:55:25-04:00
Commit Message:
DIRECTOR: LINGO: Remove unused script handling
This breaks a lot of movies, so it obviously isn't right.
Changed paths:
engines/director/cast.cpp
diff --git a/engines/director/cast.cpp b/engines/director/cast.cpp
index e2ded0b95f..60cc57911a 100644
--- a/engines/director/cast.cpp
+++ b/engines/director/cast.cpp
@@ -902,11 +902,10 @@ void Cast::loadLingoContext(Common::SeekableSubReadStreamEndian &stream) {
/* uint32 nameTableId = */ stream.readUint32();
/* int16 validCount = */ stream.readSint16();
/* uint16 flags = */ stream.readUint16();
- int16 firstUnused = stream.readSint16();
+ /* int16 firstUnused = */ stream.readSint16();
Common::Array<int16> lscr;
stream.seek(itemsOffset);
- int16 skip = firstUnused;
for (int16 i = 1; i <= itemCount; i++) {
if (debugChannelSet(5, kDebugLoading)) {
debugC(5, kDebugLoading, "Context entry %d:", i);
@@ -915,22 +914,9 @@ void Cast::loadLingoContext(Common::SeekableSubReadStreamEndian &stream) {
stream.readUint32();
int32 index = stream.readSint32();
- uint16 entryFlags = stream.readUint16();
- int16 nextUnused = stream.readSint16();
-
- // There are 2 ways to identify unused scripts:
- // 1) entryFlags & (1 << 2)
- // 2) The entry is in a linked list of unused scripts
- if (i == skip) {
- debugC(1, kDebugCompile, "Cast::loadLingoContext: Script %d is in unused list", i);
- skip = nextUnused;
- lscr.push_back(-1);
- } else if (entryFlags & (1 << 2)) {
- debugC(1, kDebugCompile, "Cast::loadLingoContext: Script %d has unused flag", i);
- lscr.push_back(-1);
- } else {
- lscr.push_back(index);
- }
+ /* uint16 entryFlags = */ stream.readUint16();
+ /* int16 nextUnused = */ stream.readSint16();
+ lscr.push_back(index);
}
for (int16 i = 0; i < (int16)lscr.size(); i++) {
More information about the Scummvm-git-logs
mailing list