Updated Upstream (Paper & Pufferfish)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@c044b14 Add support for Velocity forwarding v2
PaperMC/Paper@6c52b5e Ensure that Log4J is shutdown when stopping the server (Fixes #7932)
PaperMC/Paper@ee4916d Fire kick event for out-of-order chat on main thread (#7942)

Purpur Changes:
pufferfish-gg/Pufferfish@50b8ded #32 Fix thread unsafe random usage
pufferfish-gg/Pufferfish@0297191 Updated Upstream (Paper)
This commit is contained in:
granny
2022-06-11 21:06:23 -07:00
parent af90b11ad5
commit a5cdb4d8b0
9 changed files with 26 additions and 26 deletions

View File

@@ -1,7 +1,7 @@
group = org.purpurmc.purpur
version = 1.19-R0.1-SNAPSHOT
paperCommit = 9ad94dcbc4a43a542e685bcfed7418c00fdbcc29
paperCommit = ee4916df7df294c51691fc68bef1e0bfd89016d9
org.gradle.caching = true
org.gradle.parallel = true

View File

@@ -2183,7 +2183,7 @@ index 5a808a09291da691cbee75a55f6aa1b70ac9f018..13e49592a70285e92bf0d14ab596f3bc
}
}
diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java
index 33ccab88b93f93993b6e17d5e0a2539b08235f78..3d02750fc035742bd54b12a703e91497b04df473 100644
index 7034af8ad42940c5af6b9032b9873ce36c55a2a7..c0fdc5a79107f8694a514a12d5526bd431fc45e9 100644
--- a/src/main/java/net/minecraft/server/MCUtil.java
+++ b/src/main/java/net/minecraft/server/MCUtil.java
@@ -209,7 +209,7 @@ public final class MCUtil {
@@ -2196,7 +2196,7 @@ index 33ccab88b93f93993b6e17d5e0a2539b08235f78..3d02750fc035742bd54b12a703e91497
public static long getCoordinateKey(final ChunkPos pair) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 9e1d3a22ed7e34e4968b5fb34cc77b661eb4747d..dc864d87b634bb317a3240832e1f5129733f248f 100644
index 32dc0cd20a4dd8fc02be1f7ba3d727db826dbe5d..99751fc36a332f2f9115b56ed6ca66ab037825d3 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -295,6 +295,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2415,7 +2415,7 @@ index 3b144c820531122eb37d41be06c182b5f5dc0724..1eb912ad97f9663bf6bd336ad739f255
this.wasOnGround = this.entity.isOnGround();
this.teleportDelay = 0;
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index aaa7ad2a14389dc0dbc0d0fa3fb5ea16ec4172f6..f492833ff7b7162638777f0777366cfc70274d5d 100644
index 0dc7a827aeacc7fae53b1f975f45883da7db6a0c..b0cd9d5ec1a36af1710ebffb420e29a898e27bc8 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -689,7 +689,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -2472,7 +2472,7 @@ index aaa7ad2a14389dc0dbc0d0fa3fb5ea16ec4172f6..f492833ff7b7162638777f0777366cfc
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 0f2279d5fbe1e3457137839ff297f956be5e4cab..e1e1118dbbdb6dc032eda50dfdc953a80c2aca46 100644
index 630a762b71861bfe21c47a11d4fe05e1a3b7d339..60373551c49386652de286127636b61f31e88527 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1149,6 +1149,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3881,7 +3881,7 @@ index d559f93a9a09bac414dd5d58afccad42c127f09b..13e749a3c40f0b2cc002f13675a9a56e
@Override
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
index c46cbbf9ac4c5661933b03bc0b2559f7ade8c798..b3997b6abc8721c366e8ef5219ed449127d06899 100644
index c46cbbf9ac4c5661933b03bc0b2559f7ade8c798..ec23064d5a6d70508fad7cffc6126cfd6f7a62cb 100644
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
@@ -94,6 +94,18 @@ public class LevelChunk extends ChunkAccess {
@@ -3907,7 +3907,7 @@ index c46cbbf9ac4c5661933b03bc0b2559f7ade8c798..b3997b6abc8721c366e8ef5219ed4491
this.fluidTicks = fluidTickScheduler;
// CraftBukkit start
this.bukkitChunk = new org.bukkit.craftbukkit.CraftChunk(this);
+ this.lightningTick = this.level.random.nextInt(100000) << 1; // Pufferfish - initialize lightning tick
+ this.lightningTick = this.level.getThreadUnsafeRandom().nextInt(100000) << 1; // Pufferfish - initialize lightning tick
}
public org.bukkit.Chunk bukkitChunk;
@@ -4266,7 +4266,7 @@ index 7c1e510a0ad4b69c1fedc3367a8216046efb228e..2d9c98931df5d1c54adcfba78a913684
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
index d752720f2f234b9dbd2117333fee1bfad663ec02..f1be8a98c49a63d09c838a85eb58041733f71776 100644
index e948ec5a573b22645664eb53bc3e9932246544e4..e3845dc3357bbb74885ae3a1a08525adde581235 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
@@ -11,6 +11,7 @@ public class ServerShutdownThread extends Thread {

View File

@@ -17,10 +17,10 @@ index c8057f98e16ba6e19640e0b250e5201e0f4f57db..9a5e3f75663f6dd3351e23d850c44687
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 01ecd6548c57bd24b3c3e1ad0640062f4b781bbe..cf36af454fb82ecd34af2c468a209f6f3fd0e067 100644
index 60373551c49386652de286127636b61f31e88527..147a8a0ff6593724f311b077579178c412480451 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3373,6 +3373,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3375,6 +3375,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister");
private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support
@@ -28,7 +28,7 @@ index 01ecd6548c57bd24b3c3e1ad0640062f4b781bbe..cf36af454fb82ecd34af2c468a209f6f
@Override
public void handleCustomPayload(ServerboundCustomPayloadPacket packet) {
@@ -3397,6 +3398,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3399,6 +3400,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex);
this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
}

View File

@@ -22,7 +22,7 @@ index 153451ecd5b3c8e8ecb2d5ec91ccd582d4300899..56536c39bccfe097f8227c74a0d16799
super(x, y, z);
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8b36917fe25c5a6f12bf834ef29335153aa43c34..bee6004f68f344b2979f9262d99d5d08802751ab 100644
index 783b81e5252a689683264a494a30fb668b43a986..d4b05231b6b631f382d7e5fe6c42eba3e1581fad 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1533,6 +1533,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -34,7 +34,7 @@ index 8b36917fe25c5a6f12bf834ef29335153aa43c34..bee6004f68f344b2979f9262d99d5d08
this.profiler.push(() -> {
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index f492833ff7b7162638777f0777366cfc70274d5d..d8c014f2bccd7a47c064d802fcc0acb787c18eda 100644
index b0cd9d5ec1a36af1710ebffb420e29a898e27bc8..cabd856dc050359bbeb1e138535e44bf2a294d5c 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -218,6 +218,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -66,10 +66,10 @@ index 070b7d49b46e6e23b4baf33ac045582194579137..f4b33e5788665eefef35e701ed99d58d
public void doTick() {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 82f82de601565c2f760abd86a15424a67bf81e71..af72fade3d009c8b7f6ac587cd8eb0cb4aca8da3 100644
index 147a8a0ff6593724f311b077579178c412480451..22fad6467c6b9202e8cbf3e77e90c50f73f1f640 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2660,6 +2660,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -2662,6 +2662,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event);

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Alternative Keepalive Handling
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 6f5fb1ac8440f2174ce52f318b7d2345ce82ace6..bced7bd90f8bc4c7655b5f1fc2168486ee45352a 100644
index 474944b20fb81e9e4ed42ec2895673c98bc36420..e2f57af54380c7afa5c6ac00c8aba74e838465c4 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -245,6 +245,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -38,7 +38,7 @@ index 6f5fb1ac8440f2174ce52f318b7d2345ce82ace6..bced7bd90f8bc4c7655b5f1fc2168486
if (this.keepAlivePending) {
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected
ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info
@@ -3358,6 +3374,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3360,6 +3376,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@Override
public void handleKeepAlive(ServerboundKeepAlivePacket packet) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Entity lifespan
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index f4046f090ba589529b13671b790a3c3596af1247..0a717f7691f054a8dbe05a5e1003339e28757ffe 100644
index c84cb931a78390fd485b95e8c9b9904de920f254..3dc6c7158e1030fc2b3cbc84adb06eab2f921a7b 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2715,6 +2715,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -2717,6 +2717,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
}
if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Config for unverified username message
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index 2991ae752fa8e7bf7e7aaaca9a02430e6973aea4..940d201f0df9ac1b5628a5fa09294e83db5ddc0e 100644
index 039b47e19d672ec9066c41fcc6342523992bf7b6..982a0bb5fc0a8d62e750926217dc36690709de8b 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -401,7 +401,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
@@ -403,7 +403,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
ServerLoginPacketListenerImpl.this.gameProfile = ServerLoginPacketListenerImpl.this.createFakeProfile(gameprofile);
ServerLoginPacketListenerImpl.this.state = ServerLoginPacketListenerImpl.State.READY_TO_ACCEPT;
} else {

View File

@@ -17,10 +17,10 @@ index a90ec8363a41033db421d42896e7203e8616dd90..a5b03184ba1199d68bf2c9125c05d4b7
this.connection.send(new ClientboundBlockUpdatePacket(this.level, sign.getBlockPos()));
this.connection.send(new ClientboundOpenSignEditorPacket(sign.getBlockPos()));
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 13da39f5bbd3550961bfb7d462428e8dac988ad0..0b10b029aea73f8b662255ce444e039c90410579 100644
index 4d61504698a54af354fdf047426f87771397cc02..05bda808496f38d10416c3702b1f97fe18247769 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3382,11 +3382,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3384,11 +3384,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
for (int i = 0; i < signText.size(); ++i) {
FilteredText<Component> filteredtext = (signText.get(i)).map(Component::literal); // CraftBukkit - decompile error

View File

@@ -5,11 +5,11 @@ Subject: [PATCH] Add log suppression for sent expired chat
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 40f15152e56b407cdd2a3ea2ec5a30f52430df6b..1cd2d38597a9f590e990087346dbeb2fbe82e147 100644
index 05bda808496f38d10416c3702b1f97fe18247769..99c8b4957194868c36f9ea214c7f77a23ce8002a 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2246,7 +2246,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
this.disconnect(Component.translatable("multiplayer.disconnect.out_of_order_chat"));
@@ -2248,7 +2248,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
}); // Paper - push to main
return false;
} else {
- if (this.isChatExpired(instant)) {