#3951 closed defect (fixed)
ANY: Failed assertion on invalid save path
| Reported by: | eriktorbjorn | Owned by: | fingolfin |
|---|---|---|---|
| Priority: | high | Component: | --Other-- |
| Version: | Keywords: | ||
| Cc: | Game: |
Description
Latest SVN snapshot
If I change the save path to point to an invalid directory, ScummVM fails an assertion when I try to save. I've tried it with the SCUMM engine, and earlier today with the Drascula engine, so I assume it affects all engines:
scummvm: common/fs.cpp:68: Common::FilesystemNode Common::FilesystemNode::getChild(const Common::String&) const: Assertion `_realNode->isDirectory()' failed.
Of course, you shouldn't be able to set an invalid save path in ScummVM, but it's quite possible that someone will set a valid save path, and then move that folder somewhere else.
Ticket imported from: #2098922. Ticket imported from: bugs/3951.
Change History (7)
comment:1 by , 18 years ago
comment:2 by , 18 years ago
| Priority: | normal → high |
|---|
comment:3 by , 18 years ago
| Owner: | set to |
|---|
comment:4 by , 18 years ago
I think this bug is out of date by now. Torbjörn, can you still reproduce the issue, or can this be closed?
comment:5 by , 18 years ago
I wasn't able to trigger the assertion with the SCUMM engine or the Drascula engine. Drascula did terminate with a rather misleading "Can't open drascula.epa file!" message, but I guess that's a Drascula bug, not a file system bug.
comment:6 by , 18 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
comment:7 by , 8 years ago
| Component: | --Unset-- → --Other-- |
|---|

So, we should modify the DefaultSaveManager to validate the savepath passed to it; and if it is invalid, return an error, instead of asserting out.