From d01d228ee89d2e5c671dec825bbec50c3b6cf50c Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Sun, 25 Sep 2011 15:01:23 +0300 Subject: 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 --- engines/agi/detection.cpp | 6 ++++-- gui/saveload.cpp | 2 +- 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; -- cgit v1.2.3