From fec7eb66eac46c4a8b318d135b61c1641973aaf5 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Sun, 22 Sep 2024 13:46:09 -0400 Subject: [PATCH] Avoid error from mods that replace chunk system --- .../main/java/org/embeddedt/modernfix/ModernFix.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/common/src/main/java/org/embeddedt/modernfix/ModernFix.java b/common/src/main/java/org/embeddedt/modernfix/ModernFix.java index 3d18f4ca..17e27d64 100644 --- a/common/src/main/java/org/embeddedt/modernfix/ModernFix.java +++ b/common/src/main/java/org/embeddedt/modernfix/ModernFix.java @@ -63,14 +63,19 @@ public class ModernFix { ClassInfoManager.clear(); } + @SuppressWarnings("ConstantValue") public void onServerDead(MinecraftServer server) { /* Clear as much data from the integrated server as possible, in case a mod holds on to it */ try { for(ServerLevel level : server.getAllLevels()) { ChunkMap chunkMap = level.getChunkSource().chunkMap; - chunkMap.updatingChunkMap.clear(); - chunkMap.visibleChunkMap.clear(); - chunkMap.pendingUnloads.clear(); + // Null check for mods that replace chunk system + if(chunkMap.updatingChunkMap != null) + chunkMap.updatingChunkMap.clear(); + if(chunkMap.visibleChunkMap != null) + chunkMap.visibleChunkMap.clear(); + if(chunkMap.pendingUnloads != null) + chunkMap.pendingUnloads.clear(); } } catch(RuntimeException e) { ModernFix.LOGGER.error("Couldn't clear chunk data", e);