[Scummvm-cvs-logs] SF.net SVN: scummvm:[47348] scummvm/trunk/engines/sci

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Sun Jan 17 23:32:53 CET 2010


Revision: 47348
          http://scummvm.svn.sourceforge.net/scummvm/?rev=47348&view=rev
Author:   m_kiewitz
Date:     2010-01-17 22:32:53 +0000 (Sun, 17 Jan 2010)

Log Message:
-----------
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)

Modified Paths:
--------------
    scummvm/trunk/engines/sci/detection.cpp
    scummvm/trunk/engines/sci/resource.cpp

Modified: scummvm/trunk/engines/sci/detection.cpp
===================================================================
--- scummvm/trunk/engines/sci/detection.cpp	2010-01-17 20:23:11 UTC (rev 47347)
+++ scummvm/trunk/engines/sci/detection.cpp	2010-01-17 22:32:53 UTC (rev 47348)
@@ -273,7 +273,9 @@
 	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

Modified: scummvm/trunk/engines/sci/resource.cpp
===================================================================
--- scummvm/trunk/engines/sci/resource.cpp	2010-01-17 20:23:11 UTC (rev 47347)
+++ scummvm/trunk/engines/sci/resource.cpp	2010-01-17 22:32:53 UTC (rev 47348)
@@ -575,6 +575,11 @@
 	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();


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list