diff options
author | Martin Kiewitz | 2010-01-17 22:32:53 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-01-17 22:32:53 +0000 |
commit | 055e17b60e522417089a8c752d138f13d894f4e0 (patch) | |
tree | 2519ecaa4528c50dc8d03ddd4a524176445c7b24 /engines | |
parent | fb178c0a62eb8b5ab9a56754c2320890154b98ee (diff) | |
download | scummvm-rg350-055e17b60e522417089a8c752d138f13d894f4e0.tar.gz scummvm-rg350-055e17b60e522417089a8c752d138f13d894f4e0.tar.bz2 scummvm-rg350-055e17b60e522417089a8c752d138f13d894f4e0.zip |
SCI: fixed detection to not crash when adding sierras pinball creep, also changed detection so that we dont "accept" games that use unknown view resources (otherwise pinball creep will get detected as SCI)
svn-id: r47348
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sci/detection.cpp | 4 | ||||
-rw-r--r-- | engines/sci/resource.cpp | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/engines/sci/detection.cpp b/engines/sci/detection.cpp index 8660b56704..d3bbedef11 100644 --- a/engines/sci/detection.cpp +++ b/engines/sci/detection.cpp @@ -273,7 +273,9 @@ const ADGameDescription *SciMetaEngine::fallbackDetect(const Common::FSList &fsl if (gameViews == kViewUnknown) { SearchMan.remove("SCI_detection"); delete resMan; - return (const ADGameDescription *)&s_fallbackDesc; + // Can't be SCI (or unsupported SCI views). Pinball Creep by sierra also uses resource.map/resource.000 files + // but doesnt share sci format at all, if we dont return 0 here we will detect this game as SCI + return 0; } #ifndef ENABLE_SCI32 diff --git a/engines/sci/resource.cpp b/engines/sci/resource.cpp index ae2c6f50e7..5a4379e39b 100644 --- a/engines/sci/resource.cpp +++ b/engines/sci/resource.cpp @@ -575,6 +575,11 @@ void ResourceManager::init() { debugC(1, kDebugLevelResMan, "resMan: Detected resource map version %d: %s", _mapVersion, versionDescription(_mapVersion)); debugC(1, kDebugLevelResMan, "resMan: Detected volume version %d: %s", _volVersion, versionDescription(_volVersion)); + if ((_mapVersion == kResVersionUnknown) && (_volVersion == kResVersionUnknown)) { + _viewType = kViewUnknown; + return; + } + scanNewSources(); addInternalSources(); scanNewSources(); |