Archiviert
13
0
Dieses Repository wurde am 2024-12-25 archiviert. Du kannst Dateien ansehen und es klonen, aber nicht pushen oder Issues/Pull-Requests öffnen.
Paper-Old/Spigot-Server-Patches/0133-Fix-Chunk-Unload-Queue-Issues.patch

39 Zeilen
1.8 KiB
Diff

2017-02-04 10:59:44 +01:00
From 30c09c852ad1aae23ece5182a9e4d06f89e79a53 Mon Sep 17 00:00:00 2001
2016-06-23 04:18:41 +02:00
From: Aikar <aikar@aikar.co>
Date: Thu, 12 May 2016 02:03:56 -0400
Subject: [PATCH] Fix Chunk Unload Queue Issues
Vanilla implemented similar logic as Paper had pre 1.9.4, but Spigot
has not resolved all the bugs with the changes.
This patch fixes known issues and really should be applied by Spigot team.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
2017-01-31 05:33:54 +01:00
index 3db29161d..98f2cff15 100644
2016-06-23 04:18:41 +02:00
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -46,7 +46,7 @@ public class Chunk {
private long w;
private int x;
2016-11-17 03:23:38 +01:00
private final ConcurrentLinkedQueue<BlockPosition> y;
2016-06-23 04:18:41 +02:00
- public boolean d;
2016-11-17 03:23:38 +01:00
+ public boolean d; public void setShouldUnload(boolean unload) { this.d = unload; } public boolean isUnloading() { return d; } // Paper - OBFHELPER
2016-06-23 04:18:41 +02:00
protected gnu.trove.map.hash.TObjectIntHashMap<Class> entityCount = new gnu.trove.map.hash.TObjectIntHashMap<Class>(); // Spigot
// Paper start
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
2017-02-04 10:59:44 +01:00
index 54b454fe3..57ae50d2e 100644
2016-06-23 04:18:41 +02:00
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
2017-02-04 10:59:44 +01:00
@@ -299,6 +299,7 @@ public class ChunkProviderServer implements IChunkProvider {
2016-06-23 04:18:41 +02:00
if (chunk != null && chunk.d) {
// CraftBukkit start - move unload logic to own method
+ chunk.setShouldUnload(false); // Paper
if (!unloadChunk(chunk, true)) {
continue;
}
--
2017-02-04 10:59:44 +01:00
2.11.0
2016-06-23 04:18:41 +02:00