template stripping in FID

This commit is contained in:
caheckman 2020-10-21 16:42:43 -04:00
parent 956e8ef342
commit 062b6769f8
3 changed files with 76 additions and 56 deletions

View file

@ -405,11 +405,6 @@ public class FidStatistics extends GhidraScript {
}
String funcName = chooseFunctionName(result);
NameVersions nameVersions = NameVersions.generate(funcName, program);
String strippedTemplateName = null;
if (nameVersions.demangledBaseName != null) {
strippedTemplateName =
MatchNameAnalysis.removeTemplateParams(nameVersions.demangledBaseName);
}
boolean exactNameMatch = false;
Iterator<String> iter = matchAnalysis.getRawNameIterator();
while(iter.hasNext()) {
@ -450,14 +445,12 @@ public class FidStatistics extends GhidraScript {
exactNameMatch = true;
break;
}
if (matchNames.demangledBaseName != null && strippedTemplateName != null) {
String strippedName =
MatchNameAnalysis.removeTemplateParams(matchNames.demangledBaseName);
if (strippedName != null) {
if (checkNames(strippedName, strippedTemplateName)) {
exactNameMatch = true;
break;
}
if (nameVersions.demangledNoTemplate != null &&
matchNames.demangledNoTemplate != null) {
if (checkNames(nameVersions.demangledNoTemplate,
matchNames.demangledNoTemplate)) {
exactNameMatch = true;
break;
}
}
}