diff --git a/core/src/main/java/io/undertow/websockets/core/WebSockets.java b/core/src/main/java/io/undertow/websockets/core/WebSockets.java index b0f8c41f7c..83dff99bed 100644 --- a/core/src/main/java/io/undertow/websockets/core/WebSockets.java +++ b/core/src/main/java/io/undertow/websockets/core/WebSockets.java @@ -1018,6 +1018,9 @@ public static ByteBuffer mergeBuffers(ByteBuffer... payload) { if (size == 0) { return Buffers.EMPTY_BYTE_BUFFER; } + if (payload.length == 1) { + return payload[0].duplicate(); + } ByteBuffer buffer = ByteBuffer.allocate(size); for (ByteBuffer buf : payload) { buffer.put(buf);