@@ -1641,7 +1641,7 @@ protected BinFieldContainer collectAnnotatedFields(final Class<?> annotatedClass
16411641 if (superClass != null && superClass != Object .class ) {
16421642 final BinFieldContainer parentFields = collectAnnotatedFields (superClass );
16431643 if (!parentFields .fields .isEmpty ()) {
1644- result .addAllFromContainer (parentFields );
1644+ result .addAllFromContainerExcludeEndStruct (parentFields );
16451645 }
16461646 }
16471647
@@ -1660,9 +1660,7 @@ protected BinFieldContainer collectAnnotatedFields(final Class<?> annotatedClass
16601660 if (foundFieldBin != null ) {
16611661 result .addBinField (foundFieldBin , true , f );
16621662 } else {
1663- if (defaultBin != null ) {
1664- result .addBinField (defaultBin , false , f );
1665- }
1663+ result .addBinField (defaultBin , false , f );
16661664 }
16671665 } else {
16681666 final BinFieldContainer container = collectAnnotatedFields (type );
@@ -2148,6 +2146,14 @@ void addAllFromContainer(final BinFieldContainer container) {
21482146 this .fields .addAll (container .fields );
21492147 }
21502148
2149+ void addAllFromContainerExcludeEndStruct (final BinFieldContainer container ) {
2150+ for (final BinField field : container .fields ) {
2151+ if (field != END_STRUCT ) {
2152+ this .fields .add (field );
2153+ }
2154+ }
2155+ }
2156+
21512157 void addContainer (final BinFieldContainer container ) {
21522158 this .fields .add (container );
21532159 }
0 commit comments