[Scummvm-git-logs] scummvm master -> a105a0c121dad8356afa20a2d977720c2e7f17bf

rvanlaar noreply at scummvm.org
Sat Sep 17 21:19:10 UTC 2022


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

Summary:
9ddb71fe6e DIRECTOR: Improve comment ILS
a105a0c121 DIRECTOR: unregister shared cast before deleting


Commit: 9ddb71fe6ebe910d0e9378ae80e1840d6513368d
    https://github.com/scummvm/scummvm/commit/9ddb71fe6ebe910d0e9378ae80e1840d6513368d
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2022-09-17T22:24:56+02:00

Commit Message:
DIRECTOR: Improve comment ILS

ILS is the initial load segment.
The part of a shockwave file that's needed to get things going and
other media can be loaded later over a slow 90s internet connection

Changed paths:
    engines/director/archive.cpp


diff --git a/engines/director/archive.cpp b/engines/director/archive.cpp
index 6aa8c182643..6b1c578fb3c 100644
--- a/engines/director/archive.cpp
+++ b/engines/director/archive.cpp
@@ -796,7 +796,7 @@ bool RIFXArchive::readAfterburnerMap(Common::SeekableReadStreamEndian &stream, u
 
 	delete abmpStream;
 
-	// Initial load segment
+	// Handle Initial Load Segment (ILS)
 	if (!resourceMap.contains(2)) {
 		warning("RIFXArchive::readAfterburnerMap(): Map has no entry for ILS");
 		return false;


Commit: a105a0c121dad8356afa20a2d977720c2e7f17bf
    https://github.com/scummvm/scummvm/commit/a105a0c121dad8356afa20a2d977720c2e7f17bf
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2022-09-17T23:15:50+02:00

Commit Message:
DIRECTOR: unregister shared cast before deleting

A pointer to sharedCast was stored in the HashMap_openResFiles.
sharedCasts were deleted when a switch to a new movie was made
while _openResFiles is cleared when quitting Director.

This fix removes the reference to the shared cast when the shared cast
is deleted.

Changed paths:
    engines/director/window.cpp


diff --git a/engines/director/window.cpp b/engines/director/window.cpp
index f4b54ac9e56..9a85be8c894 100644
--- a/engines/director/window.cpp
+++ b/engines/director/window.cpp
@@ -337,10 +337,14 @@ bool Window::step() {
 				sharedCast->releaseCastMemberWidget();
 				_currentMovie->_sharedCast = sharedCast;
 			} else {
+				// clear reference in openResFile before deleting shared cast
+				g_director->_openResFiles.erase(sharedCast->getArchive()->getPathName());
 				delete sharedCast;
 				_currentMovie->loadSharedCastsFrom(sharedCastPath);
 			}
 		} else {
+			// clear reference in openResFile before deleting shared cast
+			g_director->_openResFiles.erase(sharedCast->getArchive()->getPathName());
 			delete sharedCast;
 		}
 




More information about the Scummvm-git-logs mailing list