diff --git a/README.md b/README.md index 04d3dc94e..ea3f4c891 100644 --- a/README.md +++ b/README.md @@ -687,7 +687,7 @@ public final class CharSequenceCustomEncodingBytesWriter if (cr.isOverflow()) { outputBuffer.flip(); - out.write(outputBuffer); + writeOutputBuffer(out); outputBuffer.clear(); continue; } @@ -699,11 +699,17 @@ public final class CharSequenceCustomEncodingBytesWriter } } outputBuffer.flip(); - out.write(outputBuffer); + writeOutputBuffer(out); out.writeInt(encodedSizePos, (int) (out.writePosition() - encodedSizePos - 4)); } + private void writeOutputBuffer(Bytes out) { + int remaining = outputBuffer.remaining(); + out.write(out.writePosition(), outputBuffer, 0, remaining); + out.writeSkip(remaining); + } + /** * Need this method because {@link CharBuffer#append(CharSequence, int, int)} produces garbage */