Skip to content

Commit 371626c

Browse files
committed
Fix incorrect padded buffer length method calculation.
Motivation: Buffer#length() returns an incorrect value when dealing with padded ByteBuf. Changes: Buffer#length() should use readableBytes() instead of writerIndex().
1 parent fdd4a48 commit 371626c

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

src/main/java/io/vertx/core/buffer/impl/BufferImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -514,7 +514,7 @@ public Buffer setString(int pos, String str, String enc) {
514514
}
515515

516516
public int length() {
517-
return buffer.writerIndex();
517+
return buffer.readableBytes();
518518
}
519519

520520
public Buffer copy() {

src/test/java/io/vertx/core/buffer/BufferTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1102,7 +1102,7 @@ public void testToJsonArray() throws Exception {
11021102
public void testLength() throws Exception {
11031103
byte[] bytes = TestUtils.randomByteArray(100);
11041104
Buffer buffer = Buffer.buffer(bytes);
1105-
assertEquals(100, Buffer.buffer(buffer.getByteBuf()).length());
1105+
assertEquals(100, TestUtils.leftPad(1, Buffer.buffer(buffer.getByteBuf())).length());
11061106
}
11071107

11081108
@Test

0 commit comments

Comments
 (0)