aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2011-09-25 15:01:23 +0300
committerFilippos Karapetis2011-09-25 15:03:02 +0300
commitd01d228ee89d2e5c671dec825bbec50c3b6cf50c (patch)
treee9e8e46e6f203d44d10ef5bc5e7f47eaf20e91f4
parentd50b519653aa0ade953097934efa4f544b167f3c (diff)
downloadscummvm-rg350-d01d228ee89d2e5c671dec825bbec50c3b6cf50c.tar.gz
scummvm-rg350-d01d228ee89d2e5c671dec825bbec50c3b6cf50c.tar.bz2
scummvm-rg350-d01d228ee89d2e5c671dec825bbec50c3b6cf50c.zip
AGI/COMMON: Fixed bug #3407308 - "AGI: SQ2: Saving allowed in autosave slot 0 from scummvmmenu"
The save/load dialog code was not polling for meta info for empty slots
-rw-r--r--engines/agi/detection.cpp6
-rw-r--r--gui/saveload.cpp2
2 files changed, 5 insertions, 3 deletions
diff --git a/engines/agi/detection.cpp b/engines/agi/detection.cpp
index 5141ab761f..ddd8349854 100644
--- a/engines/agi/detection.cpp
+++ b/engines/agi/detection.cpp
@@ -306,9 +306,11 @@ SaveStateDescriptor AgiMetaEngine::querySaveMetaInfos(const char *target, int sl
delete in;
return desc;
+ } else {
+ SaveStateDescriptor emptySave(slot, "");
+ emptySave.setWriteProtectedFlag(slot == 0);
+ return emptySave;
}
-
- return SaveStateDescriptor();
}
const ADGameDescription *AgiMetaEngine::fallbackDetect(const FileMap &allFilesXXX, const Common::FSList &fslist) const {
diff --git a/gui/saveload.cpp b/gui/saveload.cpp
index 02ddf814dc..ae950a21fb 100644
--- a/gui/saveload.cpp
+++ b/gui/saveload.cpp
@@ -240,7 +240,7 @@ void SaveLoadChooser::updateSelection(bool redraw) {
_time->setLabel(_("No time saved"));
_playtime->setLabel(_("No playtime saved"));
- if (selItem >= 0 && !_list->getSelectedString().empty() && _metaInfoSupport) {
+ if (selItem >= 0 && _metaInfoSupport) {
SaveStateDescriptor desc = (*_plugin)->querySaveMetaInfos(_target.c_str(), _saveList[selItem].getSaveSlot());
isDeletable = desc.getDeletableFlag() && _delSupport;