diff --git a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/AlignedComponentPacker.java b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/AlignedComponentPacker.java index 2aa9e1d85f..c8d5241fe3 100644 --- a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/AlignedComponentPacker.java +++ b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/AlignedComponentPacker.java @@ -59,7 +59,8 @@ class AlignedComponentPacker { * @param isLastComponent true if dtc is the last component within the structure */ void addComponent(InternalDataTypeComponent dtc, boolean isLastComponent) { - if (dtc.getDataType() == DataType.DEFAULT || dtc.isFlexibleArrayComponent()) { + if (dtc.getDataType() == DataType.DEFAULT || + (dtc.isFlexibleArrayComponent() && !isLastComponent)) { throw new IllegalArgumentException("unsupported component"); } if (!packComponent(dtc)) {