diff options
Diffstat (limited to 'engines/tucker')
-rw-r--r-- | engines/tucker/detection.cpp | 4 | ||||
-rw-r--r-- | engines/tucker/saveload.cpp | 10 | ||||
-rw-r--r-- | engines/tucker/tucker.h | 4 |
3 files changed, 8 insertions, 10 deletions
diff --git a/engines/tucker/detection.cpp b/engines/tucker/detection.cpp index 7d07edabd3..119d60f23a 100644 --- a/engines/tucker/detection.cpp +++ b/engines/tucker/detection.cpp @@ -175,7 +175,7 @@ public: if (ext && (slot = atoi(ext + 1)) >= 0 && slot <= Tucker::kLastSaveSlot) { Common::InSaveFile *in = g_system->getSavefileManager()->openForLoading(*file); if (in) { - if (Tucker::TuckerEngine::readSavegameHeader(in, header, false) == Tucker::TuckerEngine::kSavegameNoError) { + if (Tucker::TuckerEngine::readSavegameHeader(in, header) == Tucker::TuckerEngine::kSavegameNoError) { saveList.push_back(SaveStateDescriptor(slot, header.description)); } @@ -207,7 +207,7 @@ public: } Tucker::TuckerEngine::SavegameHeader header; - Tucker::TuckerEngine::SavegameError savegameError = Tucker::TuckerEngine::readSavegameHeader(file, header, true); + Tucker::TuckerEngine::SavegameError savegameError = Tucker::TuckerEngine::readSavegameHeader(file, header, false); if (savegameError) { delete file; return SaveStateDescriptor(); diff --git a/engines/tucker/saveload.cpp b/engines/tucker/saveload.cpp index a56ced915e..484c47e5da 100644 --- a/engines/tucker/saveload.cpp +++ b/engines/tucker/saveload.cpp @@ -141,7 +141,7 @@ Common::Error TuckerEngine::loadGameState(int slot) { } -TuckerEngine::SavegameError TuckerEngine::readSavegameHeader(const char *target, int slot, SavegameHeader &header) { +WARN_UNUSED_RESULT TuckerEngine::SavegameError TuckerEngine::readSavegameHeader(const char *target, int slot, SavegameHeader &header) { Common::String fileName = generateGameStateFileName(target, slot); Common::InSaveFile *file = g_system->getSavefileManager()->openForLoading(fileName); @@ -155,7 +155,7 @@ TuckerEngine::SavegameError TuckerEngine::readSavegameHeader(const char *target, return savegameError; } -TuckerEngine::SavegameError TuckerEngine::readSavegameHeader(Common::InSaveFile *file, SavegameHeader &header, bool loadThumbnail) { +WARN_UNUSED_RESULT TuckerEngine::SavegameError TuckerEngine::readSavegameHeader(Common::InSaveFile *file, SavegameHeader &header, bool skipThumbnail) { header.version = -1; header.flags = 0; header.description.clear(); @@ -196,10 +196,8 @@ TuckerEngine::SavegameError TuckerEngine::readSavegameHeader(Common::InSaveFile header.saveTime = file->readUint32LE(); header.playTime = file->readUint32LE(); - if (loadThumbnail) { - header.thumbnail = Graphics::loadThumbnail(*file); - } else { - Graphics::skipThumbnail(*file); + if (!Graphics::loadThumbnail(*file, header.thumbnail, skipThumbnail)) { + return kSavegameIoError; } } diff --git a/engines/tucker/tucker.h b/engines/tucker/tucker.h index 4cb427fe35..e3748680fe 100644 --- a/engines/tucker/tucker.h +++ b/engines/tucker/tucker.h @@ -452,8 +452,8 @@ public: virtual bool hasFeature(EngineFeature f) const; GUI::Debugger *getDebugger() { return _console; } - static SavegameError readSavegameHeader(Common::InSaveFile *file, SavegameHeader &header, bool loadThumbnail = false); - static SavegameError readSavegameHeader(const char *target, int slot, SavegameHeader &header); + WARN_UNUSED_RESULT static SavegameError readSavegameHeader(Common::InSaveFile *file, SavegameHeader &header, bool skipThumbnail = true); + WARN_UNUSED_RESULT static SavegameError readSavegameHeader(const char *target, int slot, SavegameHeader &header); bool isAutosaveAllowed(); static bool isAutosaveAllowed(const char *target); protected: |