aboutsummaryrefslogtreecommitdiff
path: root/engines/zvision/file/save_manager.cpp
AgeCommit message (Collapse)Author
2018-05-03ZVISION: Add play time metadata to savegamesAdrian Frühwirth
Fixes Trac#10266.
2018-04-18ZVISION: Fix crash when loading a savegameAdrian Frühwirth
Commit 00e59a3122 introduced a change to savegame handling which results in savegame thumbnails only being loaded when necessary. ZVISION's readSaveGameHeader() doesn't under all circumstances initialize the thumbnail pointer and 00e59a3122 failed to remove an otherwise unnecessary delete which resulted in the uninitialized thumbnail pointer being passed to delete (UB). Thanks to eriktorbjorn for noticing.
2018-04-07ALL: Load savegame thumbnail only when necessaryAdrian Frühwirth
This commit introduces the following changes: 1. Graphics::loadThumbnail() Now returns a boolean and takes a new argument skipThumbnail which defaults to false. In case of true, loadThumbnail() reads past the thumbnail data in the input stream instead of actually loading the thumbnail. This simplifies savegame handling where, up until now, many engines always read the whole savegame metadata (including the thumbnail) and then threw away the thumbnail when not needed (which is in almost all cases, the most common exception being MetaEngine::querySaveMetaInfos() which is responsible for loading savegame metadata for displaying it in the GUI launcher. 2. readSavegameHeader() Engines which already implement such a method (name varies) now take a new argument skipThumbnail (default: true) which is passed through to loadThumbnail(). This means that the default case for readSavegameHeader() is now _not_ loading the thumbnail from a savegame and just reading past it. In those cases, e.g. querySaveMetaInfos(), where we actually are interested in loading the thumbnail readSavegameHeader() needs to explicitely be called with skipThumbnail == false. Engines whose readSavegameHeader() (name varies) already takes an argument loadThumbnail have been adapted to have a similar prototype and semantics. I.e. readSaveHeader(in, loadThumbnail, header) now is readSaveHeader(in, header, skipThumbnail). 3. Error handling Engines which previously did not check the return value of readSavegameHeader() (name varies) now do so ensuring that possibly broken savegames (be it a broken thumbnail or something else) don't make it into the GUI launcher list in the first place.
2017-09-22ZVISION: Fix leaking save / thumbnail MemoryWriteStreamDynamic buffersBastien Bouclet
2016-11-29ALL: save file => saved gameBen Castricum
2016-11-26ZVISION: Enable translation for some more stringsrootfather
2015-07-07ZVISION: Change mentions of ZVision to Z-VisionDavid Russo
To match official documentation (e.g. game manual, credits).
2015-02-16ZVISION: Fix script bug #6793 in Zork NemesisFilippos Karapetis
2015-01-23ZVISION: Fix shadowed variableFilippos Karapetis
A bug in commit 21e9007d80. Thanks to fingolfin for pointing it out
2015-01-18ZVISION: Remove trailing whitespaceSven Hesse
2015-01-10Revert "ZVISION: Remove ActionRestoreGame and loading of r.svr (restart slot)"Filippos Karapetis
This reverts commit 9f642074ba8e17aa23b01bcee82b2293fe84f8f1, as it broke the credits screen in ZGI. This has been rewritten to use the common save code
2015-01-09ZVISION: Clean up save logic, and fix a thumbnail-related FIXMEFilippos Karapetis
This fixes the save game thumbnails when using the original save/load screens
2015-01-09ZVISION: Remove dead codeFilippos Karapetis
2014-12-26ZVISION: Implement auto-savingFilippos Karapetis
2014-12-26ZVISION: Move the save manager together with the other file classesFilippos Karapetis