diff options
author | Max Horn | 2007-02-14 00:21:53 +0000 |
---|---|---|
committer | Max Horn | 2007-02-14 00:21:53 +0000 |
commit | 75ae7cdb730859838097aec1374cad81d9040ec6 (patch) | |
tree | d34252630531f28273f67479d75ac6277364ab1e /common/advancedDetector.cpp | |
parent | 59b1526e5aee8094e51d76305c1e5a7ab3aa88e8 (diff) | |
download | scummvm-rg350-75ae7cdb730859838097aec1374cad81d9040ec6.tar.gz scummvm-rg350-75ae7cdb730859838097aec1374cad81d9040ec6.tar.bz2 scummvm-rg350-75ae7cdb730859838097aec1374cad81d9040ec6.zip |
Properly implemented the AD fallback callback
svn-id: r25576
Diffstat (limited to 'common/advancedDetector.cpp')
-rw-r--r-- | common/advancedDetector.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/common/advancedDetector.cpp b/common/advancedDetector.cpp index 54576fdfa7..242d1b8238 100644 --- a/common/advancedDetector.cpp +++ b/common/advancedDetector.cpp @@ -33,8 +33,6 @@ namespace Common { -typedef Array<const ADGameDescription*> ADGameDescList; - namespace AdvancedDetector { /** @@ -344,9 +342,10 @@ static ADGameDescList detectGame(const FSList *fslist, const Common::ADParams &p ADGameDescList matched; int maxFilesMatched = 0; + const ADGameDescription *g; for (i = 0; i < gameDescriptions.size(); i++) { - const ADGameDescription *g = gameDescriptions[i]; + g = gameDescriptions[i]; fileMissing = false; // Do not even bother to look at entries which do not have matching @@ -511,24 +510,25 @@ static ADGameDescList detectGame(const FSList *fslist, const Common::ADParams &p if (matchEntry) { // We got a match for (i = 0; i < gameDescriptions.size(); i++) { - if (gameDescriptions[i]->filesDescriptions[0].fileName == 0) { - if (!scumm_stricmp(gameDescriptions[i]->gameid, *matchEntry)) { + g = gameDescriptions[i]; + if (g->filesDescriptions[0].fileName == 0) { + if (!scumm_stricmp(g->gameid, *matchEntry)) { // FIXME: This warning, if ever seen by somebody, is // extremly cryptic! warning("But it looks like unknown variant of %s", *matchEntry); - matched.push_back(gameDescriptions[i]); + matched.push_back(g); } } } } } -/* + // If we still haven't got a match, try to use the fallback callback :-) if (matched.empty() && params.fallbackDetectFunc != 0) { matched = (*params.fallbackDetectFunc)(fslist); } -*/ + return matched; } |