From 675980c7ffbca8d05218c352bccca4ca09e57582 Mon Sep 17 00:00:00 2001 From: Scott Mitchell Date: Thu, 2 Mar 2017 10:28:52 -0800 Subject: [PATCH] Lz4FrameEncoder incorrect usage of internalNioBuffer Motivation: Lz4FrameEncoder uses internalNioBuffer but always passes in a value of 0 for the index. This should be readerIndex(). Modifications: - change 0 to readerIndex() Result: More correct usage of internalNioBuffer in Lz4FrameEncoder. --- .../io/netty/handler/codec/compression/Lz4FrameEncoder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java b/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java index 2ee6e7bc2b..055690b7a3 100644 --- a/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java +++ b/codec/src/main/java/io/netty/handler/codec/compression/Lz4FrameEncoder.java @@ -261,7 +261,7 @@ public class Lz4FrameEncoder extends MessageToByteEncoder { ByteBuffer outNioBuffer = out.internalNioBuffer(idx + HEADER_LENGTH, out.writableBytes() - HEADER_LENGTH); int pos = outNioBuffer.position(); // We always want to start at position 0 as we take care of reusing the buffer in the encode(...) loop. - compressor.compress(buffer.internalNioBuffer(0, flushableBytes), outNioBuffer); + compressor.compress(buffer.internalNioBuffer(buffer.readerIndex(), flushableBytes), outNioBuffer); compressedLength = outNioBuffer.position() - pos; } catch (LZ4Exception e) { throw new CompressionException(e);