From 731f1410420bf2383182d83046d1de89b0cdf526 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 21 Sep 2016 23:56:41 -0400 Subject: [PATCH] Raise string limit for packet serialization The default limit is possible to hit with 50 page books with color codes, causing clients to disconnect. Bump the limit up a hair to above currently seen sizes. --- ...tring-limit-for-packet-serialization.patch | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 Spigot-Server-Patches/Raise-string-limit-for-packet-serialization.patch diff --git a/Spigot-Server-Patches/Raise-string-limit-for-packet-serialization.patch b/Spigot-Server-Patches/Raise-string-limit-for-packet-serialization.patch new file mode 100644 index 0000000000..3b8d497fa8 --- /dev/null +++ b/Spigot-Server-Patches/Raise-string-limit-for-packet-serialization.patch @@ -0,0 +1,25 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Aikar +Date: Wed, 21 Sep 2016 23:54:20 -0400 +Subject: [PATCH] Raise string limit for packet serialization + +The default limit is possible to hit with 50 page books with color codes, causing clients to disconnect. + +Bump the limit up a hair to above currently seen sizes. + +diff --git a/src/main/java/net/minecraft/server/PacketDataSerializer.java b/src/main/java/net/minecraft/server/PacketDataSerializer.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/net/minecraft/server/PacketDataSerializer.java ++++ b/src/main/java/net/minecraft/server/PacketDataSerializer.java +@@ -0,0 +0,0 @@ public class PacketDataSerializer extends ByteBuf { + public PacketDataSerializer a(String s) { + byte[] abyte = s.getBytes(Charsets.UTF_8); + +- if (abyte.length > 32767) { +- throw new EncoderException("String too big (was " + s.length() + " bytes encoded, max " + 32767 + ")"); ++ if (abyte.length > 44767) { // Paper - raise limit a bit more as normal means can trigger this ++ throw new EncoderException("String too big (was " + s.length() + " bytes encoded, max " + 44767 + ")"); // Paper + } else { + this.d(abyte.length); + this.writeBytes(abyte); +-- \ No newline at end of file