From 363b6c68a3a38a42375c5f96566f7bb7308afa73 Mon Sep 17 00:00:00 2001 From: Addi Date: Sun, 17 Mar 2024 11:06:44 +0800 Subject: [PATCH] Make custom namespaces support auth data --- .../socketio/protocol/PacketDecoder.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/corundumstudio/socketio/protocol/PacketDecoder.java b/src/main/java/com/corundumstudio/socketio/protocol/PacketDecoder.java index 73303f3e..6e6d7573 100644 --- a/src/main/java/com/corundumstudio/socketio/protocol/PacketDecoder.java +++ b/src/main/java/com/corundumstudio/socketio/protocol/PacketDecoder.java @@ -326,15 +326,19 @@ private String readNamespace(ByteBuf frame, final boolean defaultToAll) { int endIndex = buffer.bytesBefore((byte) '?'); if (endIndex > 0) { - // skip this frame - frame.readerIndex(frame.readerIndex() + frame.readableBytes()); - return readString(buffer, endIndex); + String namespace = readString(buffer, endIndex); + if(namespace.startsWith("/")) { + frame.readerIndex(frame.readerIndex() + endIndex + 1); + return namespace; + } } endIndex = buffer.bytesBefore((byte) ','); if (endIndex > 0) { - // skip this frame - frame.readerIndex(frame.readerIndex() + frame.readableBytes()); - return readString(buffer, endIndex); + String namespace = readString(buffer, endIndex); + if(namespace.startsWith("/")) { + frame.readerIndex(frame.readerIndex() + endIndex + 1); + return namespace; + } } if (defaultToAll) { // skip this frame