From cbe46d2861aaa3ec56d3701463ea79671f4fae4d Mon Sep 17 00:00:00 2001 From: Allink <44676012+allinkdev@users.noreply.github.com> Date: Sat, 20 Aug 2022 03:12:03 +0100 Subject: [PATCH] Refuse to convert legacy messages over 1k characters (#60) --- ...t-legacy-messages-over-1k-characters.patch | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 patches/server/0040-Refuse-to-convert-legacy-messages-over-1k-characters.patch diff --git a/patches/server/0040-Refuse-to-convert-legacy-messages-over-1k-characters.patch b/patches/server/0040-Refuse-to-convert-legacy-messages-over-1k-characters.patch new file mode 100644 index 0000000..79cef2a --- /dev/null +++ b/patches/server/0040-Refuse-to-convert-legacy-messages-over-1k-characters.patch @@ -0,0 +1,37 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Allink +Date: Tue, 16 Aug 2022 17:13:02 +0100 +Subject: [PATCH] Refuse to convert legacy messages over 1k characters + + +diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java +index 0f70be614f8f5350ad558d0ae645cdf0027e1e76..6f036df37609daf33db3884174406e1ccd339735 100644 +--- a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java ++++ b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java +@@ -3,12 +3,14 @@ package org.bukkit.craftbukkit.util; + import com.google.common.collect.ImmutableMap; + import com.google.common.collect.ImmutableMap.Builder; + import com.google.gson.JsonParseException; ++ + import java.util.ArrayList; + import java.util.List; + import java.util.Map; + import java.util.Optional; + import java.util.regex.Matcher; + import java.util.regex.Pattern; ++ + import net.minecraft.ChatFormatting; + import net.minecraft.network.chat.ClickEvent; + import net.minecraft.network.chat.ClickEvent.Action; +@@ -199,6 +201,11 @@ public final class CraftChatMessage { + } + + public static Component[] fromString(String message, boolean keepNewlines, boolean plain) { ++ // Scissors start - Refuse to convert legacy messages over 1k characters ++ if (message.length() > 1_000) { ++ return new Component[]{Component.empty()}; ++ } ++ // Scissors end + return new StringMessage(message, keepNewlines, plain).getOutput(); + } +