From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Video Date: Fri, 19 Aug 2022 00:49:38 -0600 Subject: [PATCH] Fixes out of bounds HangingEntity crash exploit diff --git a/src/main/java/net/minecraft/world/entity/decoration/HangingEntity.java b/src/main/java/net/minecraft/world/entity/decoration/HangingEntity.java index eaad15a4d201356c34c1a09c7fbe5c35f76a2176..e166411e05287d97ea7c9d35b19d4ae3106401c3 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/HangingEntity.java +++ b/src/main/java/net/minecraft/world/entity/decoration/HangingEntity.java @@ -280,6 +280,13 @@ public abstract class HangingEntity extends Entity { public void readAdditionalSaveData(CompoundTag nbt) { BlockPos blockposition = new BlockPos(nbt.getInt("TileX"), nbt.getInt("TileY"), nbt.getInt("TileZ")); + // Scissors start - Fixes exploit where bad TileX, TileY, and TileZ coordinates can crash servers + if (level().isLoadedAndInBounds(blockposition)) + { + this.pos = blockposition; + } + // Scissors end + if (!blockposition.closerThan(this.blockPosition(), 16.0D)) { HangingEntity.LOGGER.error("Hanging entity at invalid position: {}", blockposition); } else {