[SPIGOT-7904] Shears Breaking in Dispensers Call PlayerItemBreakEvent and Crash the Server Created: 18/Sep/24 Updated: 25/Dec/24 Resolved: 18/Sep/24 |
|
Status: | Resolved |
Project: | Spigot |
Component/s: | None |
Affects Version/s: | None |
Fix Version/s: | None |
Type: | Bug | Priority: | Major |
Reporter: | ItsSchatten | Assignee: | Doc |
Resolution: | Fixed | Votes: | 0 |
Labels: | crash, server |
Version: | 4317-Spigot-a759b62-f35bae9 |
Plugin: | N/A |
Guidelines Read: | Yes |
Description |
Created after seeing: https://www.spigotmc.org/threads/error-w-shears-in-dispenser.663686/#post-4780122 Shears breaking when used in a dispenser cause a server crash because it calls the PlayerItemBreakEvent.
[12:57:51] [Server thread/ERROR]: Encountered an unexpected exception net.minecraft.ReportedException: Exception ticking world at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:1478) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.dedicated.DedicatedServer.c(DedicatedServer.java:406) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:1321) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1071) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:318) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at java.base/java.lang.Thread.run(Thread.java:1583) [?:?] Caused by: java.lang.NullPointerException: Cannot invoke "net.minecraft.server.level.EntityPlayer.getBukkitEntity()" because "human" is null at org.bukkit.craftbukkit.v1_21_R1.event.CraftEventFactory.callPlayerItemBreakEvent(CraftEventFactory.java:1387) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.world.item.ItemStack.a(ItemStack.java:681) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.core.dispenser.DispenseBehaviorShears.a(DispenseBehaviorShears.java:69) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.core.dispenser.DispenseBehaviorItem.dispense(DispenseBehaviorItem.java:33) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.world.level.block.BlockDispenser.a(BlockDispenser.java:112) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.world.level.block.BlockDispenser.a(BlockDispenser.java:139) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.world.level.block.state.BlockBase$BlockData.a(BlockBase.java:1102) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.level.WorldServer.d(WorldServer.java:867) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.world.ticks.TickListServer.a(SourceFile:215) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.world.ticks.TickListServer.a(SourceFile:98) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.level.WorldServer.a(WorldServer.java:399) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:1472) ~[spigot-1.21.1-R0.1-SNAPSHOT.jar:4317-Spigot-a759b62-f35bae9] ... 5 more
Replication: 1. Execute the below command. /give @s shears[minecraft:max_damage=1] 2. Place the received shears item into a dispenser with a sheep in front. 3. Activate the dispenser.
|
Comments |
Comment by Doc [ 18/Sep/24 ] |
PR created for fix that. https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/pull-requests/1478/overview
|