aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/supernova/detection.cpp')
-rw-r--r--engines/supernova/detection.cpp25
1 files changed, 19 insertions, 6 deletions
diff --git a/engines/supernova/detection.cpp b/engines/supernova/detection.cpp
index 8e9db14db4..b172b7fa49 100644
--- a/engines/supernova/detection.cpp
+++ b/engines/supernova/detection.cpp
@@ -32,7 +32,7 @@
static const PlainGameDescriptor supernovaGames[] = {
{"msn1", "Mission Supernova 1"},
{"msn2", "Mission Supernova 2"},
- {NULL, NULL}
+ {nullptr, nullptr}
};
namespace Supernova {
@@ -40,7 +40,7 @@ static const ADGameDescription gameDescriptions[] = {
// Mission Supernova 1
{
"msn1",
- NULL,
+ nullptr,
AD_ENTRY1s("msn_data.000", "f64f16782a86211efa919fbae41e7568", 24163),
Common::DE_DEU,
Common::kPlatformDOS,
@@ -49,7 +49,7 @@ static const ADGameDescription gameDescriptions[] = {
},
{
"msn1",
- NULL,
+ nullptr,
AD_ENTRY1s("msn_data.000", "f64f16782a86211efa919fbae41e7568", 24163),
Common::EN_ANY,
Common::kPlatformDOS,
@@ -60,13 +60,22 @@ static const ADGameDescription gameDescriptions[] = {
// Mission Supernova 2
{
"msn2",
- NULL,
+ nullptr,
AD_ENTRY1s("ms2_data.000", "e595610cba4a6d24a763e428d05cc83f", 24805),
Common::DE_DEU,
Common::kPlatformDOS,
ADGF_UNSTABLE,
GUIO1(GUIO_NONE)
},
+ {
+ "msn2",
+ nullptr,
+ AD_ENTRY1s("ms2_data.000", "e595610cba4a6d24a763e428d05cc83f", 24805),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_UNSTABLE,
+ GUIO1(GUIO_NONE)
+ },
AD_TABLE_END_MARKER
};
@@ -122,7 +131,7 @@ bool SupernovaMetaEngine::createInstance(OSystem *syst, Engine **engine, const A
*engine = new Supernova::SupernovaEngine(syst);
}
- return desc != NULL;
+ return desc != nullptr;
}
SaveStateList SupernovaMetaEngine::listSaves(const char *target) const {
@@ -200,7 +209,11 @@ SaveStateDescriptor SupernovaMetaEngine::querySaveMetaInfos(const char *target,
desc.setPlayTime(playTime * 1000);
if (Graphics::checkThumbnailHeader(*savefile)) {
- Graphics::Surface *const thumbnail = Graphics::loadThumbnail(*savefile);
+ Graphics::Surface *thumbnail;
+ if (!Graphics::loadThumbnail(*savefile, thumbnail)) {
+ delete savefile;
+ return SaveStateDescriptor();
+ }
desc.setThumbnail(thumbnail);
}