aboutsummaryrefslogtreecommitdiff
path: root/engines/wintermute/base
diff options
context:
space:
mode:
authorlolbot-iichan2019-06-29 14:37:59 +0300
committerFilippos Karapetis2019-07-16 20:24:42 +0300
commita96d127b1f07db20f66e74ae3011cc643ba7a9bd (patch)
tree6714adef468723f4f80bc3c20b53f18cd33ac0e4 /engines/wintermute/base
parent4bb82a8dae26e8bd56a8bc943c97959d37fb36ea (diff)
downloadscummvm-rg350-a96d127b1f07db20f66e74ae3011cc643ba7a9bd.tar.gz
scummvm-rg350-a96d127b1f07db20f66e74ae3011cc643ba7a9bd.tar.bz2
scummvm-rg350-a96d127b1f07db20f66e74ae3011cc643ba7a9bd.zip
WINTERMUTE: Fix assertion in Hamlet game
Assertion was caused by providing "saves/" prefixed string to WindowsFilesystemNode::getChild() function, that asserts on '/' characters. Wintermute game code: if(!(Game.FileExists((Game.SaveDirectory + "\gamelet.save")))) { Directory.Create(Game.SaveDirectory); } ... Assertion stack: from C:\WINDOWS\System32\KernelBase.dll from C:\WINDOWS\System32\msvcrt.dll (this=0xcfdf710, n=...) at backends/fs/windows/windows-fs.cpp:158 n=...) at common/fs.cpp:68 (filename=...) at engines/wintermute/base/file/base_disk_file.cpp:76 at engines/wintermute/base/file/base_disk_file.cpp:105 this=0x50795e0, filename=...) at engines/wintermute/base/base_file_manager.cpp:326 (this=0xcea72f0, script=0xcf657d0, stack=0xcf6a2e0, thisStack=0xcf69ee0, name=0xcfd8870 "FileExists") at engines/wintermute/base/base_game.cpp:1523 ...
Diffstat (limited to 'engines/wintermute/base')
-rw-r--r--engines/wintermute/base/base_game.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp
index 0c9862fa0d..1f042c20ad 100644
--- a/engines/wintermute/base/base_game.cpp
+++ b/engines/wintermute/base/base_game.cpp
@@ -2297,7 +2297,7 @@ ScValue *BaseGame::scGetProperty(const Common::String &name) {
// SaveDirectory (RO)
//////////////////////////////////////////////////////////////////////////
else if (name == "SaveDirectory") {
- AnsiString dataDir = "saves/"; // TODO: This is just to avoid telling the engine actual paths.
+ AnsiString dataDir = "saves"; // See also: SXDirectory::scGetProperty("TempDirectory")
_scValue->setString(dataDir.c_str());
return _scValue;
}