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

sev- noreply at scummvm.org
Fri Feb 24 18:39:30 UTC 2023


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:
c22a9f7bd4 DIRECTOR: Properly process external bitmaps in MacBinary format
c9a3397ee3 DIRECTOR: Plug memory leak


Commit: c22a9f7bd4a39c3213737f42eb350d27e96168c1
    https://github.com/scummvm/scummvm/commit/c22a9f7bd4a39c3213737f42eb350d27e96168c1
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-02-24T19:39:10+01:00

Commit Message:
DIRECTOR: Properly process external bitmaps in MacBinary format

Changed paths:
    engines/director/cast.cpp


diff --git a/engines/director/cast.cpp b/engines/director/cast.cpp
index 9fb72cb1a35..09d78beb229 100644
--- a/engines/director/cast.cpp
+++ b/engines/director/cast.cpp
@@ -21,6 +21,7 @@
 
 #include "common/config-manager.h"
 #include "common/file.h"
+#include "common/macresman.h"
 #include "common/memstream.h"
 #include "common/substream.h"
 
@@ -674,8 +675,6 @@ void Cast::loadBitmapData(int key, BitmapCastMember *bitmapCast) {
 		if ((pic == nullptr || pic->size() == 0)
 				&& _castsInfo.contains(key) && !_castsInfo[key]->fileName.empty()) {
 			// image file is linked, load from the filesystem
-			Common::File file;
-
 			Common::String filename = _castsInfo[key]->fileName;
 			Common::String directory = _castsInfo[key]->directory;
 
@@ -683,11 +682,12 @@ void Cast::loadBitmapData(int key, BitmapCastMember *bitmapCast) {
 
 			Common::Path path = Common::Path(pathMakeRelative(imageFilename), g_director->_dirSeparator);
 
-			if (file.open(path)) {
+			Common::SeekableReadStream *file = Common::MacResManager::openFileOrDataFork(path);
+			if (file) {
 				Image::PICTDecoder *pict = new Image::PICTDecoder();
 
-				bool res = pict->loadStream(file);
-				file.close();
+				bool res = pict->loadStream(*file);
+				delete file;
 
 				if (res) {
 					bitmapCast->_img = pict;


Commit: c9a3397ee3d5f80a32906a33355df82ababf8ffd
    https://github.com/scummvm/scummvm/commit/c9a3397ee3d5f80a32906a33355df82ababf8ffd
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-02-24T19:39:10+01:00

Commit Message:
DIRECTOR: Plug memory leak

Changed paths:
    engines/director/cast.cpp


diff --git a/engines/director/cast.cpp b/engines/director/cast.cpp
index 09d78beb229..d002aad2dab 100644
--- a/engines/director/cast.cpp
+++ b/engines/director/cast.cpp
@@ -698,6 +698,7 @@ void Cast::loadBitmapData(int key, BitmapCastMember *bitmapCast) {
 					delete pic;
 					return;
 				} else {
+					delete pict;
 					warning("BUILDBOT: Cast::loadBitmapData(): wrong format for external picture '%s'", path.toString().c_str());
 				}
 			} else {




More information about the Scummvm-git-logs mailing list