[Scummvm-cvs-logs] CVS: scummvm/scumm resource.cpp,1.67,1.68

Max Horn fingolfin at users.sourceforge.net
Thu May 1 07:36:07 CEST 2003


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv17350/scumm

Modified Files:
	resource.cpp 
Log Message:
khalek, your patch didn't handle Indy (the original cause for my patch). This oneshould work better.

Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/resource.cpp,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -d -r1.67 -r1.68
--- resource.cpp	1 May 2003 11:40:21 -0000	1.67
+++ resource.cpp	1 May 2003 14:35:21 -0000	1.68
@@ -560,12 +560,16 @@
 
 	// FIXME - TODO: This check used to be "i==0". However, that causes
 	// problems when using this function to ensure charset 0 is loaded.
+	// This is done for many games, e.g. Zak256 or Indy3 (EGA and VGA).
+	// For now we restrict the check to anything which is not a charset.
 	// Question: Why was this check like that in the first place?
-	// Answer: costumes with an index of zero in the newer games at least
-	// TODO: determine after what version this behaviour changes...
-	if ((_gameId == GID_ZAK256) && (i < 0))
-		return;
-	else if (i == 0)
+	// Answer: costumes with an index of zero in the newer games at least.
+	// TODO: determine why the heck anything would try to load a costume
+	// with id 0. Is that "normal", or is it caused by yet another bug in
+	// our code base? After all we also have to add special cases for many
+	// of our script opcodes that check for the (invalid) actor 0... so 
+	// maybe both issues are related...
+	if (type != rtCharset && i == 0)
 		return;
 
 	if (i <= res.num[type])





More information about the Scummvm-git-logs mailing list