From 76e7e93f3c153f81825d859bfeefe7aff065774f Mon Sep 17 00:00:00 2001 From: Graham Date: Tue, 26 Jul 2022 22:43:04 +0100 Subject: [PATCH] Allocate buffer exactly in NameSuggestionsCodec Signed-off-by: Graham --- .../create/downstream/NameSuggestionsCodec.kt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/protocol/src/main/kotlin/org/openrs2/protocol/create/downstream/NameSuggestionsCodec.kt b/protocol/src/main/kotlin/org/openrs2/protocol/create/downstream/NameSuggestionsCodec.kt index bed7919d..3636cf0e 100644 --- a/protocol/src/main/kotlin/org/openrs2/protocol/create/downstream/NameSuggestionsCodec.kt +++ b/protocol/src/main/kotlin/org/openrs2/protocol/create/downstream/NameSuggestionsCodec.kt @@ -1,6 +1,7 @@ package org.openrs2.protocol.create.downstream import io.netty.buffer.ByteBuf +import io.netty.buffer.ByteBufAllocator import org.openrs2.crypto.StreamCipher import org.openrs2.protocol.PacketCodec import org.openrs2.util.Base37 @@ -42,4 +43,17 @@ public class NameSuggestionsCodec : PacketCodec( output.setByte(index, written / 8) } + + override fun allocateBuffer( + alloc: ByteBufAllocator, + input: CreateResponse.NameSuggestions, + preferDirect: Boolean + ): ByteBuf { + val len = 2 + input.names.size * 8 + return if (preferDirect) { + alloc.ioBuffer(len, len) + } else { + alloc.heapBuffer(len, len) + } + } }