PaperSpigot-Parent/CraftBukkit-Patches/0035-Prevent-Ghost-Players-Caused-by-Plugins.patch
Zach Brown 74110558b2 Update from upstream SpigotMC
81e4ab71ca4
b023457499d
dc776bee32b
116e6fc98dc
2b97a3846f2
2014-12-12 22:47:57 -06:00

27 lines
1.1 KiB
Diff

From f8664946ba2853b3d8413cf9c6624f515655c48a Mon Sep 17 00:00:00 2001
From: Alex Ciuba <alexciuba@gmail.com>
Date: Tue, 11 Jun 2013 15:23:03 -0400
Subject: [PATCH] Prevent Ghost Players Caused by Plugins
Check if the player is still connected after firing event. Fixes BUKKIT-4327
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index f76709f..3b6e4f0 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -506,6 +506,11 @@ public abstract class PlayerList {
Player respawnPlayer = cserver.getPlayer(entityplayer1);
PlayerRespawnEvent respawnEvent = new PlayerRespawnEvent(respawnPlayer, location, isBedSpawn);
cserver.getPluginManager().callEvent(respawnEvent);
+ // Spigot Start
+ if (entityplayer.playerConnection.isDisconnected()) {
+ return entityplayer;
+ }
+ // Spigot End
location = respawnEvent.getRespawnLocation();
entityplayer.reset();
--
2.1.0