mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-05-24 21:26:15 +08:00
GP-345 Minor change to fix Decompiler not decompiling some undefined
functions referenced by FDETable
This commit is contained in:
+1
@@ -147,6 +147,7 @@ public class FdeTable {
|
||||
|
||||
// this is an indirect reference to code from the table,
|
||||
// so tag reference as an indirect code flow
|
||||
// TODO: This should be a CODE flow, leaving as INDIRECTION until refactor
|
||||
prog.getReferenceManager().addMemoryReference(locComponentAddr, locAddr,
|
||||
RefType.INDIRECTION,
|
||||
SourceType.ANALYSIS, 0);
|
||||
|
||||
@@ -172,6 +172,9 @@ public class UndefinedFunction implements Function {
|
||||
FlowType flowType = blockReference.getFlowType();
|
||||
if (flowType.isCall())
|
||||
continue; // Don't follow call edges for within-function analysis
|
||||
if (flowType.isIndirect() || flowType.isData()) {
|
||||
continue;
|
||||
}
|
||||
count += 1; // Count the existence of source that is NOT a call
|
||||
Address sourceAddr = blockReference.getSourceAddress();
|
||||
if (visitedAddresses.contains(sourceAddr))
|
||||
|
||||
Reference in New Issue
Block a user