diff --git a/src/main/java/io/orprotocol/Stream.java b/src/main/java/io/orprotocol/Stream.java index c1c01c7..08fc0af 100644 --- a/src/main/java/io/orprotocol/Stream.java +++ b/src/main/java/io/orprotocol/Stream.java @@ -28,14 +28,16 @@ public class Stream { public void writeInt8(int value) { int negationBit = value < 0 ? 1 : 0; int int8Value = Math.abs(value) & 0xFF; - - ensureCapacity(writePointer >> 3); + /** + * 1 sign + * 8 bits for value + */ + reserveBits(9); stream[writePointer >> 3] |= (byte) (negationBit << (7 - (writePointer & 7))); writePointer++; for (int i = 0; i < 8; i++) { int bit = (int8Value >> (7 - i)) & 1; - ensureCapacity(writePointer >> 3); stream[writePointer >> 3] |= (byte) (bit << (7 - (writePointer & 7))); writePointer++; }