[Java] byte buffer factory returned buffer capcity is used instead of the requested...
authorIdan Sheinberg <ishinberg0@gmail.com>
Thu, 17 Oct 2019 22:11:33 +0000 (01:11 +0300)
committerWouter van Oortmerssen <aardappel@gmail.com>
Thu, 17 Oct 2019 22:11:33 +0000 (15:11 -0700)
* byte buffer factory returned buffer is used instead of the requested capacity

* byte buffer factory returned buffer is used instead of the requested capacity

* Comment fix

java/com/google/flatbuffers/FlatBufferBuilder.java

index 574516f..7341b01 100644 (file)
@@ -242,6 +242,7 @@ public class FlatBufferBuilder {
         int new_buf_size = old_buf_size == 0 ? 1 : old_buf_size << 1;
         bb.position(0);
         ByteBuffer nbb = bb_factory.newByteBuffer(new_buf_size);
+        new_buf_size = nbb.clear().capacity(); // Ensure the returned buffer is treated as empty
         nbb.position(new_buf_size - old_buf_size);
         nbb.put(bb);
         return nbb;