[Scummvm-cvs-logs] SF.net SVN: scummvm:[55250] scummvm/trunk/engines/sci/engine/vm.cpp

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Sat Jan 15 13:18:13 CET 2011


Revision: 55250
          http://scummvm.svn.sourceforge.net/scummvm/?rev=55250&view=rev
Author:   thebluegr
Date:     2011-01-15 12:18:13 +0000 (Sat, 15 Jan 2011)

Log Message:
-----------
SCI: cleaned up checkSelectorBreakpoint()

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/vm.cpp

Modified: scummvm/trunk/engines/sci/engine/vm.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/vm.cpp	2011-01-15 11:54:20 UTC (rev 55249)
+++ scummvm/trunk/engines/sci/engine/vm.cpp	2011-01-15 12:18:13 UTC (rev 55250)
@@ -395,18 +395,13 @@
 };
 
 bool SciEngine::checkSelectorBreakpoint(BreakpointType breakpointType, reg_t send_obj, int selector) {
-	char method_name[256];
+	Common::String methodName = _gamestate->_segMan->getObjectName(send_obj);
+	methodName += ("::" + getKernel()->getSelectorName(selector));
 
-	sprintf(method_name, "%s::%s", _gamestate->_segMan->getObjectName(send_obj), getKernel()->getSelectorName(selector).c_str());
-
-	Common::List<Breakpoint>::const_iterator bp;
-	for (bp = _debugState._breakpoints.begin(); bp != _debugState._breakpoints.end(); ++bp) {
-		int cmplen = bp->name.size();
-		if (bp->name.lastChar() != ':')
-			cmplen = 256;
-
-		if (bp->type == breakpointType && !strncmp(bp->name.c_str(), method_name, cmplen)) {
-			_console->DebugPrintf("Break on %s (in [%04x:%04x])\n", method_name, PRINT_REG(send_obj));
+	Common::List<Breakpoint>::const_iterator bpIter;
+	for (bpIter = _debugState._breakpoints.begin(); bpIter != _debugState._breakpoints.end(); ++bpIter) {
+		if ((*bpIter).type == breakpointType && (*bpIter).name == methodName) {
+			_console->DebugPrintf("Break on %s (in [%04x:%04x])\n", methodName.c_str(), PRINT_REG(send_obj));
 			_debugState.debugging = true;
 			_debugState.breakpointWasHit = true;
 			return true;


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