[Scummvm-git-logs] scummvm master -> 7e3f13a921bf8a9b309d7439be8a204edf79e538
aquadran
noreply at scummvm.org
Sun Jul 19 19:32:00 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:
7e3f13a921 WINTERMUTE: Rework packages for 'Project Joe', 'Mystic Triddle', 'Monday Starts on Saturday'
Commit: 7e3f13a921bf8a9b309d7439be8a204edf79e538
https://github.com/scummvm/scummvm/commit/7e3f13a921bf8a9b309d7439be8a204edf79e538
Author: PaweÅ KoÅodziejski (aquadran at gmail.com)
Date: 2026-07-19T21:31:47+02:00
Commit Message:
WINTERMUTE: Rework packages for 'Project Joe', 'Mystic Triddle', 'Monday Starts on Saturday'
Changed paths:
engines/wintermute/base/base_file_manager.cpp
diff --git a/engines/wintermute/base/base_file_manager.cpp b/engines/wintermute/base/base_file_manager.cpp
index 8077b52a051..b32445a48b2 100644
--- a/engines/wintermute/base/base_file_manager.cpp
+++ b/engines/wintermute/base/base_file_manager.cpp
@@ -251,12 +251,15 @@ bool BaseFileManager::registerPackages() {
// Register without using SearchMan, as otherwise the FSNode-based lookup in openPackage will fail
// and that has to be like that to support the detection-scheme.
Common::FSList files;
- Common::FSList postponedfiles;
for (Common::FSList::const_iterator it = _packagePaths.begin(); it != _packagePaths.end(); ++it) {
debugC(kWintermuteDebugFileAccess, "Should register folder: %s %s", it->getPath().toString(Common::Path::kNativeSeparator).c_str(), it->getName().c_str());
if (!it->getChildren(files, Common::FSNode::kListFilesOnly)) {
warning("getChildren() failed for path: %s", it->getName().c_str());
}
+
+ // Sort packages in alphabetical order
+ Common::sort(files.begin(), files.end());
+
for (Common::FSList::const_iterator fileIt = files.begin(); fileIt != files.end(); ++fileIt) {
if (!fileIt)
continue;
@@ -275,19 +278,10 @@ bool BaseFileManager::registerPackages() {
searchSignature = true;
}
- // 'Project Joe' and 'Mystic Triddle'
- // Put package as last
+ // W/A: skip package in 'Project Joe' and 'Mystic Triddle'
if (fileName == "master.dcp" &&
- (BaseEngine::instance().getGameId() == "projectjoe" ||
- BaseEngine::instance().getGameId() == "mystictriddle")) {
- postponedfiles.push_back(*fileIt);
- continue;
- }
- // 'Monday Starts on Saturday'
- // Put package as last
- if (fileName == "sdata.dcp" &&
- BaseEngine::instance().getGameId() == "msos") {
- postponedfiles.push_back(*fileIt);
+ (BaseEngine::instance().getGameId() == "projectjoe" ||
+ BaseEngine::instance().getGameId() == "mystictriddle")) {
continue;
}
@@ -390,13 +384,6 @@ bool BaseFileManager::registerPackages() {
debugC(kWintermuteDebugFileAccess, "Registering %s %s", fileIt->getPath().toString(Common::Path::kNativeSeparator).c_str(), fileIt->getName().c_str());
registerPackage((*fileIt), fileName, searchSignature);
}
-
- for (Common::FSList::const_iterator fileIt = postponedfiles.begin(); fileIt != postponedfiles.end(); ++fileIt) {
- debugC(kWintermuteDebugFileAccess, "Registering %s %s", fileIt->getPath().toString(Common::Path::kNativeSeparator).c_str(), fileIt->getName().c_str());
- Common::String fileName = fileIt->getName();
- fileName.toLowercase();
- registerPackage((*fileIt), fileName, false);
- }
}
// debugC(kWintermuteDebugFileAccess, " Registered %d files in %d package(s)", _files.size(), _packages.size());
More information about the Scummvm-git-logs
mailing list