70ad51a80c
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing My recent work on serialization is now in CraftBukkit so was able to drop the patch and Paper is now consistent with upstream. Bukkit Changes: e2699636 Move API notes to more obvious location CraftBukkit Changes: 1b2830a3 SPIGOT-4441: Fix serializing Components to and from Legacy
33 lines
1.6 KiB
Diff
33 lines
1.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Alfie Cleveland <alfeh@me.com>
|
|
Date: Tue, 27 Dec 2016 01:57:57 +0000
|
|
Subject: [PATCH] Properly fix item duplication bug
|
|
|
|
Credit to prplz for figuring out the real issue
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
index 482d7b7cb6b89d79b2ce54338130481f9f1c8c24..bf32997c422d478699c32ce0539a65c35fbf0d12 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
@@ -1795,7 +1795,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
|
|
|
@Override
|
|
protected boolean isFrozen() {
|
|
- return super.isFrozen() || !getBukkitEntity().isOnline();
|
|
+ return super.isFrozen() || (this.playerConnection != null && this.playerConnection.isDisconnected()); // Paper
|
|
}
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
index eb3ed0d8757c59b387cd74a6df7371c356bd6d3a..fbaf234e8400dc14dc2421c87c80eb887ba44fef 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
@@ -2526,7 +2526,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
}
|
|
|
|
public final boolean isDisconnected() {
|
|
- return !this.player.joining && !this.networkManager.isConnected();
|
|
+ return (!this.player.joining && !this.networkManager.isConnected()) || this.processedDisconnect; // Paper
|
|
}
|
|
// CraftBukkit end
|
|
|