mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-10-01 17:11:44 -09:00
GP-4593 - PDB - Reorder out-of-order base classes
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user