diff options
author | Owen <[email protected]> | 2024-03-03 17:05:34 -0500 |
---|---|---|
committer | GitHub <[email protected]> | 2024-03-03 17:05:34 -0500 |
commit | 89d51d5f298cd25d6f44388970596c6780b5664b (patch) | |
tree | 07f41f4ce7bc466ea5e35faa2575d0ec6f6c4a76 /patches/server/0749-Disable-component-selector-resolving-in-books-by-def.patch | |
parent | b21eb4d9a4d0d0bea857675e2186657592df548e (diff) | |
download | Paper-89d51d5f298cd25d6f44388970596c6780b5664b.tar.gz Paper-89d51d5f298cd25d6f44388970596c6780b5664b.zip |
Allow enabling sand duping (#10191)
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable.
It should be noted that this decision does not promise all future exploits will be configurable.
Diffstat (limited to 'patches/server/0749-Disable-component-selector-resolving-in-books-by-def.patch')
-rw-r--r-- | patches/server/0749-Disable-component-selector-resolving-in-books-by-def.patch | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/patches/server/0749-Disable-component-selector-resolving-in-books-by-def.patch b/patches/server/0749-Disable-component-selector-resolving-in-books-by-def.patch new file mode 100644 index 0000000000..33fd8e47d0 --- /dev/null +++ b/patches/server/0749-Disable-component-selector-resolving-in-books-by-def.patch @@ -0,0 +1,19 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Nassim Jahnke <[email protected]> +Date: Thu, 2 Jun 2022 20:35:58 +0200 +Subject: [PATCH] Disable component selector resolving in books by default + + +diff --git a/src/main/java/net/minecraft/world/item/WrittenBookItem.java b/src/main/java/net/minecraft/world/item/WrittenBookItem.java +index a324df312d9bb87d9e0962f8028d900933e70c07..258a636a59203c4e5415a89002c6a607338f9514 100644 +--- a/src/main/java/net/minecraft/world/item/WrittenBookItem.java ++++ b/src/main/java/net/minecraft/world/item/WrittenBookItem.java +@@ -111,7 +111,7 @@ public class WrittenBookItem extends Item { + + public static boolean resolveBookComponents(ItemStack book, @Nullable CommandSourceStack commandSource, @Nullable Player player) { + CompoundTag compoundTag = book.getTag(); +- if (compoundTag != null && !compoundTag.getBoolean("resolved")) { ++ if (io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.resolveSelectorsInBooks && compoundTag != null && !compoundTag.getBoolean("resolved")) { // Paper - Disable component selector resolving in books by default + compoundTag.putBoolean("resolved", true); + if (!makeSureTagIsValid(compoundTag)) { + return false; |