[Scummvm-cvs-logs] SF.net SVN: scummvm:[51128] tools/branches/gsoc2010-decompiler/decompiler

pidgeot at users.sourceforge.net pidgeot at users.sourceforge.net
Thu Jul 22 02:22:15 CEST 2010


Revision: 51128
          http://scummvm.svn.sourceforge.net/scummvm/?rev=51128&view=rev
Author:   pidgeot
Date:     2010-07-22 00:22:14 +0000 (Thu, 22 Jul 2010)

Log Message:
-----------
Fix incorrectly printed stuff

Modified Paths:
--------------
    tools/branches/gsoc2010-decompiler/decompiler/codegen.cpp
    tools/branches/gsoc2010-decompiler/decompiler/scummv6/codegen.cpp

Modified: tools/branches/gsoc2010-decompiler/decompiler/codegen.cpp
===================================================================
--- tools/branches/gsoc2010-decompiler/decompiler/codegen.cpp	2010-07-22 00:14:51 UTC (rev 51127)
+++ tools/branches/gsoc2010-decompiler/decompiler/codegen.cpp	2010-07-22 00:22:14 UTC (rev 51128)
@@ -205,8 +205,11 @@
 					break;
 				default:
 					{
+						uint32 dest = _engine->getDestAddress(it);
+						if (dest == _curGroup->_next->_start->_address)
+							continue;
 						std::stringstream s;
-						s << boost::format("goto %X") % _engine->getDestAddress(it);
+						s << boost::format("goto %X") % dest;
 					}
 					break;
 				}

Modified: tools/branches/gsoc2010-decompiler/decompiler/scummv6/codegen.cpp
===================================================================
--- tools/branches/gsoc2010-decompiler/decompiler/scummv6/codegen.cpp	2010-07-22 00:14:51 UTC (rev 51127)
+++ tools/branches/gsoc2010-decompiler/decompiler/scummv6/codegen.cpp	2010-07-22 00:22:14 UTC (rev 51128)
@@ -142,7 +142,7 @@
 		case 0x57: // wordVarDec
 			{
 				std::stringstream s;
-				EntryPtr p = new UnaryOpEntry(new VarEntry(decodeVarName(inst._params[0].getUnsigned())), inst._codeGenData);
+				EntryPtr p = new UnaryOpEntry(new VarEntry(decodeVarName(inst._params[0].getUnsigned())), inst._codeGenData.substr(1));
 				s << p;
 				addOutputLine(s.str());
 			}
@@ -155,7 +155,7 @@
 				std::stringstream s;
 				EntryList idxs;
 				idxs.push_front(_stack.pop());
-				EntryPtr p = new UnaryOpEntry(new ArrayEntry(decodeVarName(inst._params[0].getUnsigned()), idxs), inst._codeGenData);
+				EntryPtr p = new UnaryOpEntry(new ArrayEntry(decodeVarName(inst._params[0].getUnsigned()), idxs), inst._codeGenData.substr(1));
 				s << p;
 				addOutputLine(s.str());
 			}


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