[Scummvm-git-logs] scummvm master -> 3568890a8eb4aeb87ff088d2e4044e80eec3e6d3

sev- noreply at scummvm.org
Wed Jul 15 13:46:48 UTC 2026


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .

Summary:
3568890a8e DIRECTOR: Read Afterburner-compressed chunks big-endian by default


Commit: 3568890a8eb4aeb87ff088d2e4044e80eec3e6d3
    https://github.com/scummvm/scummvm/commit/3568890a8eb4aeb87ff088d2e4044e80eec3e6d3
Author: Gianluca Boiano (morf3089 at gmail.com)
Date: 2026-07-15T15:46:45+02:00

Commit Message:
DIRECTOR: Read Afterburner-compressed chunks big-endian by default

The zlib branch of RIFXArchive::getResource() passed the archive
endianness instead of the computed default, so compressed chunks in
little-endian Shockwave movies parsed byte-swapped, unlike the same
chunks stored uncompressed or in the ILS.

Fixes 'Stxt init: unhandled offset' fatal loading Option.dcr in bioscopia

Changed paths:
    engines/director/archive.cpp


diff --git a/engines/director/archive.cpp b/engines/director/archive.cpp
index 6b476de0013..7655282b61d 100644
--- a/engines/director/archive.cpp
+++ b/engines/director/archive.cpp
@@ -1135,7 +1135,7 @@ Common::SeekableReadStreamEndian *RIFXArchive::getResource(uint32 tag, uint16 id
 		} else {
 			_stream->seek(_ilsBodyOffset + res.offset);
 			uint32 actualUncompLength = res.uncompSize;
-			Common::SeekableReadStreamEndian *stream = readZlibData(*_stream, res.size, &actualUncompLength, _isBigEndian);
+			Common::SeekableReadStreamEndian *stream = readZlibData(*_stream, res.size, &actualUncompLength, bigEndian);
 			if (!stream) {
 				error("RIFXArchive::getResource(): Could not uncompress '%s' %d", tag2str(tag), id);
 			}




More information about the Scummvm-git-logs mailing list