From ad12f0764bad0fb6cd7d23d5371df3de112eaa0b Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Fri, 10 Jun 2016 18:29:45 +0200 Subject: [PATCH] fix reader index --- .../src/org/jetbrains/io/MessageDecoder.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/platform/platform-impl/src/org/jetbrains/io/MessageDecoder.java b/platform/platform-impl/src/org/jetbrains/io/MessageDecoder.java index dca61410e12e..1020b5708b76 100644 --- a/platform/platform-impl/src/org/jetbrains/io/MessageDecoder.java +++ b/platform/platform-impl/src/org/jetbrains/io/MessageDecoder.java @@ -56,14 +56,19 @@ public abstract class MessageDecoder extends Decoder { } else { CharBuffer charBuffer = chunkedContent; - if (charBuffer == null) { - return input.toString(input.readerIndex(), required, StandardCharsets.UTF_8); + CharSequence result; + if (charBuffer != null) { + chunkedContent = null; + consumedContentByteCount = 0; + ChannelBufferToStringKt.readIntoCharBuffer(input, required, charBuffer); + result = new CharSequenceBackedByChars(charBuffer); + } + else { + result = input.toString(input.readerIndex(), required, StandardCharsets.UTF_8); } - chunkedContent = null; - consumedContentByteCount = 0; - ChannelBufferToStringKt.readIntoCharBuffer(input, required, charBuffer); - return new CharSequenceBackedByChars(charBuffer); + input.readerIndex(input.readerIndex() + required); + return result; } }