From e4ba663d2a8de53edf25b954ad3dfacfdbf77199 Mon Sep 17 00:00:00 2001 From: Nate Mortensen Date: Thu, 16 Jan 2014 18:23:08 -0700 Subject: Relocate NaN check on PacketPlayInFlying. --- src/main/java/net/minecraft/server/PlayerConnection.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java index 29335eac..ee6b0a1e 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -179,6 +179,13 @@ public class PlayerConnection implements PacketPlayInListener { } public void a(PacketPlayInFlying packetplayinflying) { + // CraftBukkit start - Check for NaN + if (Double.isNaN(packetplayinflying.x) || Double.isNaN(packetplayinflying.y) || Double.isNaN(packetplayinflying.z) || Double.isNaN(packetplayinflying.stance)) { + c.warn(player.getName() + " was caught trying to crash the server with an invalid position."); + getPlayer().kickPlayer("Nope!"); + return; + } + // CraftBukkit end WorldServer worldserver = this.minecraftServer.getWorldServer(this.player.dimension); this.g = true; @@ -249,13 +256,6 @@ public class PlayerConnection implements PacketPlayInListener { } } - if (Double.isNaN(packetplayinflying.x) || Double.isNaN(packetplayinflying.y) || Double.isNaN(packetplayinflying.z) || Double.isNaN(packetplayinflying.stance)) { - player.teleport(player.getWorld().getSpawnLocation(), PlayerTeleportEvent.TeleportCause.UNKNOWN); - System.err.println(player.getName() + " was caught trying to crash the server with an invalid position."); - player.kickPlayer("Nope!"); - return; - } - if (this.checkMovement && !this.player.dead) { // CraftBukkit end double d1; -- cgit v1.2.3