Paper/patches/server/0900-Sign-cleanup-filtering.patch
Nassim Jahnke 18f0f8d1ca
Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
312281ea PR-742: Make World implement Keyed

CraftBukkit Changes:
2ac7fa7a SPIGOT-7014: getLootTable API should not persistently update loot table
7fdd7941 PR-1046: Make World implement Keyed
7bc728a6 PR-1045: Revert changes to persistence required checks

Spigot Changes:
b6d12d17 Rebuild patches
2022-05-09 11:03:07 +02:00

39 lines
2.0 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sat, 30 Apr 2022 00:38:57 +0100
Subject: [PATCH] Sign cleanup filtering
TODO: This logic here should be moved into a DataFixer in the next MC release
noting to ensure to apply the cleanup logic here, and clean up the added
tags
diff --git a/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java
index 6371176fba41218a209ea59b4cafe5b2d4a685fd..d5bcc81a809e3c733c6fc11309bcf0913860edf6 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java
@@ -72,6 +72,7 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C
}
// CraftBukkit end
+ nbt.putBoolean("Paper.cleanedFiltered", true); // Paper
nbt.putString("Color", this.color.getName());
nbt.putBoolean("GlowingText", this.hasGlowingText);
}
@@ -88,6 +89,7 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C
boolean oldSign = Boolean.getBoolean("convertLegacySigns") && !nbt.getBoolean("Bukkit.isConverted");
// CraftBukkit end
+ boolean cleanedFiltered = nbt.getBoolean("Paper.cleanedFiltered"); // Paper
for (int i = 0; i < 4; ++i) {
String s = nbt.getString(SignBlockEntity.RAW_TEXT_FIELD_NAMES[i]);
// CraftBukkit start
@@ -105,7 +107,7 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C
this.messages[i] = ichatbasecomponent;
String s1 = SignBlockEntity.FILTERED_TEXT_FIELD_NAMES[i];
- if (nbt.contains(s1, 8)) {
+ if (cleanedFiltered && nbt.contains(s1, 8)) { // Paper
this.filteredMessages[i] = this.loadLine(nbt.getString(s1));
} else {
this.filteredMessages[i] = ichatbasecomponent;