Paper/Spigot-Server-Patches/0158-Raise-string-limit-for-packet-serialization.patch
2018-01-10 23:31:19 -06:00

28 Zeilen
1.3 KiB
Diff

From 643e02228eb710e215fb00406b8bda665520218b 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 a8fc7e43..c1273e98 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.14.3