From 55f0b88c07f02eb2fcdeb5284131acd10e13eee8 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Tue, 9 Nov 2010 17:07:34 +0000 Subject: SCI: Fixed the fallback detector again This is a regression from r54155, as we previously ignored the result of addInternalSources() in the fallback detector svn-id: r54163 --- engines/sci/detection.cpp | 2 +- engines/sci/resource.cpp | 12 ++++++------ engines/sci/resource.h | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) (limited to 'engines/sci') diff --git a/engines/sci/detection.cpp b/engines/sci/detection.cpp index 80da7b1375..e26e514b02 100644 --- a/engines/sci/detection.cpp +++ b/engines/sci/detection.cpp @@ -513,7 +513,7 @@ const ADGameDescription *SciMetaEngine::fallbackDetect(const Common::FSList &fsl ResourceManager *resMan = new ResourceManager(); assert(resMan); resMan->addAppropriateSources(fslist); - resMan->init(); + resMan->init(true); // TODO: Add error handling. #ifndef ENABLE_SCI32 diff --git a/engines/sci/resource.cpp b/engines/sci/resource.cpp index 703dc47760..f08c72a833 100644 --- a/engines/sci/resource.cpp +++ b/engines/sci/resource.cpp @@ -813,7 +813,7 @@ void ResourceManager::freeResourceSources() { ResourceManager::ResourceManager() { } -void ResourceManager::init() { +void ResourceManager::init(bool initFromFallbackDetector) { _memoryLocked = 0; _memoryLRU = 0; _LRU.clear(); @@ -845,12 +845,12 @@ void ResourceManager::init() { scanNewSources(); - if (!addInternalSources()) { - error("Somehow I can't seem to find the sound files I need (RESOURCE.AUD/RESOURCE.SFX), aborting"); - return; - } + if (!initFromFallbackDetector) { + if (!addInternalSources()) + error("Somehow I can't seem to find the sound files I need (RESOURCE.AUD/RESOURCE.SFX), aborting"); - scanNewSources(); + scanNewSources(); + } detectSciVersion(); diff --git a/engines/sci/resource.h b/engines/sci/resource.h index f46f26620d..d9b162df31 100644 --- a/engines/sci/resource.h +++ b/engines/sci/resource.h @@ -273,7 +273,7 @@ public: /** * Initializes the resource manager. */ - void init(); + void init(bool initFromFallbackDetector = false); int addAppropriateSources(); int addAppropriateSources(const Common::FSList &fslist); // TODO: Switch from FSList to Common::Archive? -- cgit v1.2.3