mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-14 02:41:24 +01:00
89d51d5f29
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable. It should be noted that this decision does not promise all future exploits will be configurable.
41 lines
2.3 KiB
Diff
41 lines
2.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
|
|
Date: Tue, 22 Feb 2022 14:21:35 -0800
|
|
Subject: [PATCH] Put world into worldlist before initing the world
|
|
|
|
Some parts of legacy conversion will need the overworld
|
|
to get the legacy structure data storage
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
index 239b1616ddd4cb64a0565d0f8f3bef7bbaaf23c9..39735cce3c32d9905130dca2d7e34aff144364ef 100644
|
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
@@ -629,9 +629,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
|
}
|
|
|
|
worlddata.setModdedInfo(this.getServerModName(), this.getModdedStatus().shouldReportAsModified());
|
|
+ this.addLevel(world); // Paper - Put world into worldlist before initing the world; move up
|
|
this.initWorld(world, worlddata, this.worldData, worldoptions);
|
|
|
|
- this.addLevel(world);
|
|
+ // Paper - Put world into worldlist before initing the world; move up
|
|
this.getPlayerList().addWorldborderListener(world);
|
|
|
|
if (worlddata.getCustomBossEvents() != null) {
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
index ddf3ce680bc8c69647a89ee46fd1547e566a61b8..f629991fa998d4dab89ed5c3d26b1b7a4f85b5cb 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -1295,10 +1295,11 @@ public final class CraftServer implements Server {
|
|
return null;
|
|
}
|
|
|
|
+ this.console.addLevel(internal); // Paper - Put world into worldlist before initing the world; move up
|
|
this.console.initWorld(internal, worlddata, worlddata, worlddata.worldGenOptions());
|
|
|
|
internal.setSpawnSettings(true, true);
|
|
- this.console.addLevel(internal);
|
|
+ // Paper - Put world into worldlist before initing the world; move up
|
|
|
|
this.getServer().prepareLevels(internal.getChunkSource().chunkMap.progressListener, internal);
|
|
internal.entityManager.tick(); // SPIGOT-6526: Load pending entities so they are available to the API
|