[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