[Scummvm-cvs-logs] CVS: scummvm/scumm debugger.cpp,1.9,1.10

Jonathan Gray khalek at users.sourceforge.net
Sat Jan 18 03:24:01 CET 2003


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

Modified Files:
	debugger.cpp 
Log Message:
add bounds check for debugger costume switcher

Index: debugger.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- debugger.cpp	18 Jan 2003 10:38:32 -0000	1.9
+++ debugger.cpp	18 Jan 2003 11:23:02 -0000	1.10
@@ -303,6 +303,7 @@
 bool ScummDebugger::Cmd_Actor(int argc, const char **argv) {
 	Actor *a;
 	int actnum;
+	int value;
 
 	if (argc < 3) {
 		Debug_Printf("Syntax: actor <actornum> <command> <parameter>\n");
@@ -321,8 +322,13 @@
 			a->ignoreBoxes = atoi(argv[3]);
 			Debug_Printf("Actor[%d].ignoreBoxes = %d\n", actnum, a->ignoreBoxes);
 	} else if (!strcmp(argv[2], "costume")) {
-			a->setActorCostume( atoi(argv[3]) );
-			Debug_Printf("Actor[%d].costume = %d\n", actnum, a->costume);
+			value = atoi(argv[3]);
+			if (value >= _s->res.num[rtCostume])
+					Debug_Printf("Costume not changed as %d exceeds max of %d\n", value, _s->res.num[rtCostume]);
+			else {
+				a->setActorCostume( value );
+				Debug_Printf("Actor[%d].costume = %d\n", actnum, a->costume);
+			}
 	} else {
 			Debug_Printf("Unknown actor command '%s'\n", argv[2]);
 	}





More information about the Scummvm-git-logs mailing list