[Scummvm-cvs-logs] CVS: scummvm/scumm object.cpp,1.68,1.69 scummvm.cpp,2.59,2.60

Max Horn fingolfin at users.sourceforge.net
Fri Mar 7 16:57:03 CET 2003


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

Modified Files:
	object.cpp scummvm.cpp 
Log Message:
added yet another sanity check (assert); fixed long standing evil bug in getObjNewDir / getObjOldDir

Index: object.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/object.cpp,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -d -r1.68 -r1.69
--- object.cpp	8 Mar 2003 00:24:23 -0000	1.68
+++ object.cpp	8 Mar 2003 00:56:42 -0000	1.69
@@ -1068,31 +1068,16 @@
 }
 
 int Scumm::getObjOldDir(int obj) {
-	if (obj < NUM_ACTORS) {
-		return newDirToOldDir(derefActorSafe(obj, "getObjOldDir")->facing);
-	} else {
-		int x, y, dir;
-		getObjectXYPos(obj, x, y, dir);
-		return dir;
-	}
+	return newDirToOldDir(getObjNewDir(obj));
 }
 
-int another_dummy_valgrind_var = 0;
-
 int Scumm::getObjNewDir(int obj) {
 	int dir;
 	if (obj < NUM_ACTORS) {
 		dir = derefActorSafe(obj, "getObjNewDir")->facing;
-		if (dir > 0)
-			another_dummy_valgrind_var++;
 	} else {
 		int x, y;
 		getObjectXYPos(obj, x, y, dir);
-		if (dir > 0)
-			another_dummy_valgrind_var *= 2;
-		dir = oldDirToNewDir(dir);
-		if (dir > 0)
-			another_dummy_valgrind_var--;
 	}
 	return dir;
 }

Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.59
retrieving revision 2.60
diff -u -d -r2.59 -r2.60
--- scummvm.cpp	7 Mar 2003 22:44:25 -0000	2.59
+++ scummvm.cpp	8 Mar 2003 00:56:43 -0000	2.60
@@ -1439,6 +1439,7 @@
 // Convert an new style (angle) direction to an old style one.
 //
 int oldDirToNewDir(int dir) {
+	assert(0 <= dir && dir <= 3);
 	const int new_dir_table[4] = { 270, 90, 180, 0 };
 	return new_dir_table[dir];
 }





More information about the Scummvm-git-logs mailing list