diff options
Diffstat (limited to 'engines/mohawk')
-rw-r--r-- | engines/mohawk/myst_state.cpp | 7 | ||||
-rw-r--r-- | engines/mohawk/riven_saveload.cpp | 6 |
2 files changed, 11 insertions, 2 deletions
diff --git a/engines/mohawk/myst_state.cpp b/engines/mohawk/myst_state.cpp index 213a976413..20b8ec47ae 100644 --- a/engines/mohawk/myst_state.cpp +++ b/engines/mohawk/myst_state.cpp @@ -272,7 +272,12 @@ SaveStateDescriptor MystGameState::querySaveMetaInfos(int slot) { desc.setSaveDate(metadata.saveYear, metadata.saveMonth, metadata.saveDay); desc.setSaveTime(metadata.saveHour, metadata.saveMinute); desc.setPlayTime(metadata.totalPlayTime); - desc.setThumbnail(Graphics::loadThumbnail(*metadataFile)); + Graphics::Surface *thumbnail; + if (!Graphics::loadThumbnail(*metadataFile, thumbnail)) { + delete metadataFile; + return SaveStateDescriptor(); + } + desc.setThumbnail(thumbnail); delete metadataFile; diff --git a/engines/mohawk/riven_saveload.cpp b/engines/mohawk/riven_saveload.cpp index 7165166d8f..1d9ae211d9 100644 --- a/engines/mohawk/riven_saveload.cpp +++ b/engines/mohawk/riven_saveload.cpp @@ -148,7 +148,11 @@ SaveStateDescriptor RivenSaveLoad::querySaveMetaInfos(const int slot) { return descriptor; } - descriptor.setThumbnail(Graphics::loadThumbnail(*thmbStream)); + Graphics::Surface *thumbnail; + if (!Graphics::loadThumbnail(*thmbStream, thumbnail)) { + return descriptor; + } + descriptor.setThumbnail(thumbnail); delete thmbStream; |