Skip to content

Commit b4a8fb8

Browse files
committed
[Java]: simplify next token advancement while OTF decoding composites.
1 parent 04ade1c commit b4a8fb8

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

sbe-tool/src/main/java/uk/co/real_logic/sbe/otf/OtfMessageDecoder.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ private static void decodeComposite(
194194
{
195195
listener.onBeginComposite(fieldToken, tokens, tokenIdx, toIndex);
196196

197-
for (int i = tokenIdx + 1; i < toIndex; i++)
197+
for (int i = tokenIdx + 1; i < toIndex;)
198198
{
199199
final Token typeToken = tokens.get(i);
200200
final int nextFieldIdx = i + typeToken.componentTokenCount();
@@ -206,25 +206,24 @@ private static void decodeComposite(
206206
case BEGIN_COMPOSITE:
207207
decodeComposite(
208208
fieldToken, buffer, bufferIdx + offset, tokens, i, nextFieldIdx - 1, actingVersion, listener);
209-
i = nextFieldIdx - 1;
210209
break;
211210

212211
case BEGIN_ENUM:
213212
listener.onEnum(
214213
fieldToken, buffer, bufferIdx + offset, tokens, i, nextFieldIdx - 1, actingVersion);
215-
i = nextFieldIdx - 1;
216214
break;
217215

218216
case BEGIN_SET:
219217
listener.onBitSet(
220218
fieldToken, buffer, bufferIdx + offset, tokens, i, nextFieldIdx - 1, actingVersion);
221-
i = nextFieldIdx - 1;
222219
break;
223220

224221
case ENCODING:
225222
listener.onEncoding(typeToken, buffer, bufferIdx + offset, typeToken, actingVersion);
226223
break;
227224
}
225+
226+
i += typeToken.componentTokenCount();
228227
}
229228

230229
listener.onEndComposite(fieldToken, tokens, tokenIdx, toIndex);

0 commit comments

Comments
 (0)