Merge remote-tracking branch 'origin/GP-4593_ghizard_PDB_reorder_base_clases' into Ghidra_11.1

This commit is contained in:
Ryan Kurtz
2024-05-10 14:19:19 -04:00

View File

@@ -722,6 +722,7 @@ public class CppCompositeType {
private List<ClassPdbMember> getDirectBaseClassMembers(TaskMonitor monitor)
throws CancelledException {
List<ClassPdbMember> myDirectClassPdbMembers = new ArrayList<>();
TreeMap<Integer, Member> orderedBaseMembers = new TreeMap<>();
for (LayoutBaseClass base : getLayoutBaseClasses()) {
monitor.checkCancelled();
CppCompositeType baseComposite = base.getBaseClassType();
@@ -733,10 +734,13 @@ public class CppCompositeType {
getBaseCategoryName("BaseClass_" + base.getBaseClassType().getName());
Member baseMember =
new Member("", baseDataType, false, null, offset, cn.toString());
addPdbMember(myDirectClassPdbMembers, baseMember);
orderedBaseMembers.put(offset, baseMember);
}
}
}
for (Member baseMember : orderedBaseMembers.values()) {
addPdbMember(myDirectClassPdbMembers, baseMember);
}
return myDirectClassPdbMembers;
}