From 0f8aa4e6fdd71571ee6bd22e7d9fdbb0228605ca Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Fri, 22 Apr 2022 17:21:38 -0700 Subject: [PATCH] Fix NPE for BlockDataMeta#getBlockData (#7670) --- ...x-NPE-for-BlockDataMeta-getBlockData.patch | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 patches/server/0897-Fix-NPE-for-BlockDataMeta-getBlockData.patch diff --git a/patches/server/0897-Fix-NPE-for-BlockDataMeta-getBlockData.patch b/patches/server/0897-Fix-NPE-for-BlockDataMeta-getBlockData.patch new file mode 100644 index 000000000..317d9c340 --- /dev/null +++ b/patches/server/0897-Fix-NPE-for-BlockDataMeta-getBlockData.patch @@ -0,0 +1,22 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jake Potrebic +Date: Sun, 27 Mar 2022 16:00:28 -0700 +Subject: [PATCH] Fix NPE for BlockDataMeta#getBlockData + + +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +index 1fe46049cc33c24db04fbfcde36ab275c03177bf..5607dc10dc1c9d2dbf4e3007890e5e89a175605e 100644 +--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java ++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +@@ -1093,7 +1093,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { + + @Override + public BlockData getBlockData(Material material) { +- return CraftBlockData.fromData(BlockItem.getBlockState(CraftMagicNumbers.getBlock(material).defaultBlockState(), blockData)); ++ // Paper start - fix NPE if this.blockData is null ++ final net.minecraft.world.level.block.state.BlockState defaultBlockState = CraftMagicNumbers.getBlock(material).defaultBlockState(); ++ return CraftBlockData.fromData(this.blockData == null ? defaultBlockState : BlockItem.getBlockState(defaultBlockState, blockData)); ++ // Paper end + } + + @Override