From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MC_XiaoHei Date: Sun, 18 May 2025 03:21:56 +0000 Subject: [PATCH] Do not prevent block entity and entity crash at LevelChunk diff --git a/net/minecraft/world/level/chunk/LevelChunk.java b/net/minecraft/world/level/chunk/LevelChunk.java index 479723aaee1cf9ea6be8606a63f721236b3e2424..e6cc97e21e31faab0562e2a43766bd00f0451a19 100644 --- a/net/minecraft/world/level/chunk/LevelChunk.java +++ b/net/minecraft/world/level/chunk/LevelChunk.java @@ -988,12 +988,14 @@ public class LevelChunk extends ChunkAccess implements DebugValueSource, ca.spot profilerFiller.pop(); } catch (Throwable var5) { + // Leaves start - do not prevent here // Paper start - Prevent block entity and entity crashes - final String msg = String.format("BlockEntity threw exception at %s:%s,%s,%s", LevelChunk.this.getLevel().getWorld().getName(), this.getPos().getX(), this.getPos().getY(), this.getPos().getZ()); - net.minecraft.server.MinecraftServer.LOGGER.error(msg, var5); - net.minecraft.world.level.chunk.LevelChunk.this.level.getCraftServer().getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerInternalException(msg, var5))); // Paper - ServerExceptionEvent - LevelChunk.this.removeBlockEntity(this.getPos()); + // final String msg = String.format("BlockEntity threw exception at %s:%s,%s,%s", LevelChunk.this.getLevel().getWorld().getName(), this.getPos().getX(), this.getPos().getY(), this.getPos().getZ()); + // net.minecraft.server.MinecraftServer.LOGGER.error(msg, var5); + // net.minecraft.world.level.chunk.LevelChunk.this.level.getCraftServer().getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerInternalException(msg, var5))); // Paper - ServerExceptionEvent + // LevelChunk.this.removeBlockEntity(this.getPos()); // Paper end - Prevent block entity and entity crashes + // Leaves end - do not prevent here } } }