[Scummvm-git-logs] scummvm master -> 2276bba3286af1fea6c37bcd7d192f0b9bbeb94b

mgerhardy noreply at scummvm.org
Mon Aug 24 19:08:52 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:
2276bba328 MACS2: fixed CID 1685499 and CID 1685493


Commit: 2276bba3286af1fea6c37bcd7d192f0b9bbeb94b
    https://github.com/scummvm/scummvm/commit/2276bba3286af1fea6c37bcd7d192f0b9bbeb94b
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2026-08-24T21:08:05+02:00

Commit Message:
MACS2: fixed CID 1685499 and CID 1685493

Changed paths:
    engines/macs2/macs2.cpp
    engines/macs2/scriptexecutor.cpp


diff --git a/engines/macs2/macs2.cpp b/engines/macs2/macs2.cpp
index f3d42f3b583..5cbd6344621 100644
--- a/engines/macs2/macs2.cpp
+++ b/engines/macs2/macs2.cpp
@@ -759,8 +759,9 @@ void Macs2Engine::readBackgroundAnimations(Common::SeekableReadStream *stream) {
 				break;
 			current._frames[j]._width = fi.width;
 			current._frames[j]._height = fi.height;
-			current._frames[j]._data.resize(fi.width * fi.height);
-			memcpy(current._frames[j]._data.data(), fi.pixels, fi.width * fi.height);
+			const uint32 pix = (uint32)fi.width * (uint32)fi.height;
+			current._frames[j]._data.resize(pix);
+			memcpy(current._frames[j]._data.data(), fi.pixels, pix);
 		}
 
 		// The blob's internal frame pointer is stored in the resource file data.
diff --git a/engines/macs2/scriptexecutor.cpp b/engines/macs2/scriptexecutor.cpp
index e2b268c7a73..f8cb5e74786 100644
--- a/engines/macs2/scriptexecutor.cpp
+++ b/engines/macs2/scriptexecutor.cpp
@@ -2151,11 +2151,11 @@ OpcodeResult Script::ScriptExecutor::scriptLoadSpecialAnim() {
 
 	while (object->_blobs.size() < animSlot)
 		object->_blobs.push_back(Common::Array<uint8>());
-	object->_blobs[animSlot - 1] = animData;
+	object->_blobs[animSlot - 1] = Common::move(animData);
 
 	// Keep V1 overload mirror fields in sync when targeting the classic overload slot.
 	if (animSlot == 0x15 || animSlot == _engine->overloadAnimSlot()) {
-		object->_overloadAnimation = animData;
+		object->_overloadAnimation = object->_blobs[animSlot - 1];
 		object->_overloadAnimationMirrored = (shouldMirror != 0);
 	}
 	return OpcodeResult::Continue;




More information about the Scummvm-git-logs mailing list