Merge remote-tracking branch 'origin/GP-5008-dragonmacher-vt-exception'

(Closes #7028)
This commit is contained in:
Ryan Kurtz
2024-10-10 14:09:20 -04:00
2 changed files with 10 additions and 5 deletions
@@ -325,14 +325,18 @@ public class DataGraph {
private void removeInEdge(DataVertex node, int inEdge) { private void removeInEdge(DataVertex node, int inEdge) {
DataVertex inNode = node.sources.get(inEdge); DataVertex inNode = node.sources.get(inEdge);
int outEdge; int outEdge;
for (outEdge = 0; outEdge < inNode.sinks.size(); ++outEdge) { for (outEdge = 0; outEdge < inNode.sinks.size(); outEdge++) {
if (inNode.sinks.get(outEdge) == node) { if (inNode.sinks.get(outEdge) == node) {
break; break;
} }
} }
node.sources.remove(inEdge); node.sources.remove(inEdge);
int n = inNode.sinks.size();
if (n != 0) {
inNode.sinks.remove(outEdge); inNode.sinks.remove(outEdge);
} }
}
/** /**
* Dump a string representation of the data-flow graph. * Dump a string representation of the data-flow graph.
@@ -29,6 +29,7 @@ import ghidra.features.base.codecompare.model.FunctionComparisonModelListener;
import ghidra.features.base.codecompare.panel.CodeComparisonPanel; import ghidra.features.base.codecompare.panel.CodeComparisonPanel;
import ghidra.features.base.codecompare.panel.FunctionComparisonPanel; import ghidra.features.base.codecompare.panel.FunctionComparisonPanel;
import ghidra.framework.plugintool.PluginTool; import ghidra.framework.plugintool.PluginTool;
import ghidra.program.model.address.Address;
import ghidra.program.model.listing.Function; import ghidra.program.model.listing.Function;
import ghidra.util.datastruct.Duo; import ghidra.util.datastruct.Duo;
import ghidra.util.datastruct.Duo.Side; import ghidra.util.datastruct.Duo.Side;
@@ -228,7 +229,7 @@ public class MultiFunctionComparisonPanel extends FunctionComparisonPanel
String functionName = f.getName(); String functionName = f.getName();
String functionPathToProgram = f.getProgram().getDomainFile().getPathname(); String functionPathToProgram = f.getProgram().getDomainFile().getPathname();
String functionAddress = f.getBody().getMinAddress().toString(); Address functionAddress = f.getEntryPoint();
String text = functionName + "@" + functionAddress + " (" + functionPathToProgram + ")"; String text = functionName + "@" + functionAddress + " (" + functionPathToProgram + ")";
return super.getListCellRendererComponent(list, text, index, isSelected, cellHasFocus); return super.getListCellRendererComponent(list, text, index, isSelected, cellHasFocus);