PaperMC/Spigot-Server-Patches/0160-Raise-string-limit-for-packet-serialization.patch
2017-05-14 16:06:27 -05:00

27 lines
1.3 KiB
Diff

From f1d70755ff2ee54f353515083dab77f31091bf09 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
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 a8fc7e431..c1273e988 100644
--- a/src/main/java/net/minecraft/server/PacketDataSerializer.java
+++ b/src/main/java/net/minecraft/server/PacketDataSerializer.java
@@ -300,8 +300,8 @@ public class PacketDataSerializer extends ByteBuf {
public PacketDataSerializer a(String s) {
byte[] abyte = s.getBytes(StandardCharsets.UTF_8);
- if (abyte.length > 32767) {
- throw new EncoderException("String too big (was " + abyte.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);
--
2.13.0