aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/scumm/plugin.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/engines/scumm/plugin.cpp b/engines/scumm/plugin.cpp
index 62c0e70547..b980681220 100644
--- a/engines/scumm/plugin.cpp
+++ b/engines/scumm/plugin.cpp
@@ -991,16 +991,13 @@ static void detectGames(const FSList &fslist, Common::List<DetectorResult> &resu
dr.game = *g;
dr.game.gameid = d.md5Entry->gameid;
- // Sanity check
- if (dr.game.platform != Common::kPlatformUnknown && dr.game.platform != d.md5Entry->platform)
- warning("SCUMM detectGames: Platform values differ for MD5 '%s': %d vs %d (please report to Fingolfin)",
- md5str, dr.game.platform, d.md5Entry->platform);
-
- // Force game to have Mac platform, if required by HE game
- if (dr.fp.genMethod == kGenHEMac || dr.fp.genMethod == kGenHEMacNoParens) {
- dr.game.platform = Common::kPlatformMacintosh;
- } else {
+ // Set the platform value. The value from the MD5 record has
+ // highest priority; if missing (i.e. set to unknown) we try
+ // to use that from the filename pattern record instead.
+ if (d.md5Entry->platform != Common::kPlatformUnknown) {
dr.game.platform = d.md5Entry->platform;
+ } else if (gfp->platform != Common::kPlatformUnknown) {
+ dr.game.platform = gfp->platform;
}
// HACK: Special case to distinguish the V1 demo from the full version