[Scummvm-git-logs] scummvm master -> d6669cb0c57b2689a6a2c9c50c8fb563329901da
bluegr
noreply at scummvm.org
Wed Jul 2 06:33:23 UTC 2025
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
1c5a20f5de COMMON: Properly set error when save game can't be opened (fixes failing test in testbed)
da72893e31 TESTBED: Fix broken ImageAlbum tests
9caf1c9898 TESTBED: Fix tests failing for files with trailing dots
d6669cb0c5 TESTBED: Fix running in non-interactive mode
Commit: 1c5a20f5de71bd4e25e9f38b3bd7b9fe861f378d
https://github.com/scummvm/scummvm/commit/1c5a20f5de71bd4e25e9f38b3bd7b9fe861f378d
Author: Christian Kündig (christian at kuendig.info)
Date: 2025-07-02T09:33:18+03:00
Commit Message:
COMMON: Properly set error when save game can't be opened (fixes failing test in testbed)
Changed paths:
backends/saves/default/default-saves.cpp
diff --git a/backends/saves/default/default-saves.cpp b/backends/saves/default/default-saves.cpp
index 7546a3d2c9a..6ebee53a17c 100644
--- a/backends/saves/default/default-saves.cpp
+++ b/backends/saves/default/default-saves.cpp
@@ -115,12 +115,14 @@ Common::InSaveFile *DefaultSaveFileManager::openForLoading(const Common::String
for (const auto &lockedFile : _lockedFiles) {
if (filename == lockedFile) {
+ setError(Common::kReadingFailed, Common::String::format("Savefile '%s' is locked and cannot be loaded", filename.c_str()));
return nullptr; // file is locked, no loading available
}
}
SaveFileCache::const_iterator file = _saveFileCache.find(filename);
if (file == _saveFileCache.end()) {
+ setError(Common::kPathDoesNotExist, Common::String::format("Savefile '%s' does not exist", filename.c_str()));
return nullptr;
} else {
// Open the file for loading.
Commit: da72893e31ea1715ce67f6e9e1b36b2569e369c6
https://github.com/scummvm/scummvm/commit/da72893e31ea1715ce67f6e9e1b36b2569e369c6
Author: Christian Kündig (christian at kuendig.info)
Date: 2025-07-02T09:33:18+03:00
Commit Message:
TESTBED: Fix broken ImageAlbum tests
Changed paths:
engines/testbed/sound.cpp
diff --git a/engines/testbed/sound.cpp b/engines/testbed/sound.cpp
index ad3d6453944..523074959b2 100644
--- a/engines/testbed/sound.cpp
+++ b/engines/testbed/sound.cpp
@@ -354,7 +354,7 @@ SoundSubsystemTestSuite::SoundSubsystemTestSuite() {
// Make audio-files discoverable
Common::FSNode gameRoot(ConfMan.getPath("path"));
if (gameRoot.exists()) {
- SearchMan.addSubDirectoryMatching(gameRoot, "audiocd-files");
+ SearchMan.addSubDirectoryMatching(gameRoot, "audiocd-files", 0, 2, false);
if (SearchMan.hasFile("track01.mp3") && SearchMan.hasFile("track02.mp3") && SearchMan.hasFile("track03.mp3") && SearchMan.hasFile("track04.mp3")) {
addTest("AudiocdOutput", &SoundSubsystem::audiocdOutput, true);
} else {
Commit: 9caf1c98989ddf7f19b1f5348883c099be0f17aa
https://github.com/scummvm/scummvm/commit/9caf1c98989ddf7f19b1f5348883c099be0f17aa
Author: Christian Kündig (christian at kuendig.info)
Date: 2025-07-02T09:33:18+03:00
Commit Message:
TESTBED: Fix tests failing for files with trailing dots
Changed paths:
engines/testbed/fs.cpp
diff --git a/engines/testbed/fs.cpp b/engines/testbed/fs.cpp
index 4ff99d3d2f4..31893b5938a 100644
--- a/engines/testbed/fs.cpp
+++ b/engines/testbed/fs.cpp
@@ -20,6 +20,7 @@
*/
#include "common/config-manager.h"
+#include "common/file.h"
#include "common/stream.h"
#include "common/util.h"
@@ -38,8 +39,17 @@ namespace Testbed {
*/
bool FStests::readDataFromFile(Common::FSDirectory *directory, const char *file) {
- Common::SeekableReadStream *readStream = directory->createReadStreamForMember(file);
+ if (!SearchMan.isPathDirectory(directory->getFSNode().getPath())) {
+ SearchMan.addDirectory(directory->getFSNode().getPath(), 0, 1, false);
+ }
+ Common::ScopedPtr<Common::File> f(new Common::File());
+ if (!f->open(file)) {
+ Testsuite::logDetailedPrintf("Can't open game file\n");
+ return false;
+ }
+
+ Common::SeekableReadStream *readStream = f.release();
if (!readStream) {
Testsuite::logDetailedPrintf("Can't open game file for reading\n");
return false;
Commit: d6669cb0c57b2689a6a2c9c50c8fb563329901da
https://github.com/scummvm/scummvm/commit/d6669cb0c57b2689a6a2c9c50c8fb563329901da
Author: Christian Kündig (christian at kuendig.info)
Date: 2025-07-02T09:33:18+03:00
Commit Message:
TESTBED: Fix running in non-interactive mode
Changed paths:
engines/testbed/config.cpp
engines/testbed/config.h
diff --git a/engines/testbed/config.cpp b/engines/testbed/config.cpp
index ff81d57a6c9..cfa1d5c2e53 100644
--- a/engines/testbed/config.cpp
+++ b/engines/testbed/config.cpp
@@ -205,13 +205,6 @@ void TestbedInteractionDialog::handleCommand(GUI::CommandSender *sender, uint32
GUI::Dialog::handleCommand(sender, cmd, data);
}
-void TestbedConfigManager::initDefaultConfiguration() {
- // Default Configuration
- // Add Global configuration Parameters here.
- ConfParams.setSessionAsInteractive(ConfMan.getBool("interactive-mode"));
- _configFileInterface.setKey("isSessionInteractive", "Global", ConfParams.isSessionInteractive() ? "true" : "false");
-}
-
void TestbedConfigManager::writeTestbedConfigToStream(Common::WriteStream *ws) {
for (Common::Array<Testsuite *>::const_iterator i = _testsuiteList.begin(); i < _testsuiteList.end(); i++) {
_configFileInterface.setKey("this", (*i)->getName(), boolToString((*i)->isEnabled()));
@@ -243,9 +236,18 @@ Common::WriteStream *TestbedConfigManager::getConfigWriteStream() const {
void TestbedConfigManager::parseConfigFile() {
Common::SeekableReadStream *rs = getConfigReadStream();
+ // get interactive mode from global config
+ ConfParams.setSessionAsInteractive(ConfMan.getBool("interactive-mode"));
+ _configFileInterface.setKey("isSessionInteractive", "Global", ConfParams.isSessionInteractive() ? "true" : "false");
+
if (!rs) {
Testsuite::logPrintf("Info! No config file found, using default configuration.\n");
- initDefaultConfiguration();
+ return;
+ }
+
+ if (!ConfParams.isSessionInteractive()) {
+ // Non-interactive sessions don't need to go beyond (they run all tests)
+ Testsuite::logPrintf("Info! Non interactive session, skipping config parsing.\n");
return;
}
_configFileInterface.loadFromStream(*rs);
diff --git a/engines/testbed/config.h b/engines/testbed/config.h
index d222fabf180..f1e9dd0db35 100644
--- a/engines/testbed/config.h
+++ b/engines/testbed/config.h
@@ -56,7 +56,6 @@ public:
Testsuite *getTestsuiteByName(const Common::String &name);
bool stringToBool(const Common::String &str) { return str.equalsIgnoreCase("true") ? true : false; }
Common::String boolToString(bool val) { return val ? "true" : "false"; }
- void initDefaultConfiguration();
int getNumSuitesEnabled();
private:
More information about the Scummvm-git-logs
mailing list