From 4ab21ac47a9022c52580cbb0034ebc92543a6a7f Mon Sep 17 00:00:00 2001 From: Robotia Date: Thu, 28 Jan 2016 17:21:54 -0500 Subject: [PATCH] PaperSpigot fix (https://github.com/PaperSpigot/Paper-1.7/blob/master/Spigot-Server-Patches/0039-Improve-Network-Manager-packet-handling.patch) --- .../network/NetworkManager.java.patch | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/patches/net/minecraft/network/NetworkManager.java.patch b/patches/net/minecraft/network/NetworkManager.java.patch index 64181b2..54193db 100644 --- a/patches/net/minecraft/network/NetworkManager.java.patch +++ b/patches/net/minecraft/network/NetworkManager.java.patch @@ -68,6 +68,18 @@ if (this.channel != null && this.channel.isOpen()) { this.flushOutboundQueue(); +@@ -181,9 +206,9 @@ + { + if (this.channel != null && this.channel.isOpen()) + { +- while (!this.outboundPacketsQueue.isEmpty()) ++ NetworkManager.InboundHandlerTuplePacketListener inboundhandlertuplepacketlistener = null; ++ while ((inboundhandlertuplepacketlistener = (NetworkManager.InboundHandlerTuplePacketListener)this.outboundPacketsQueue.poll()) != null) + { +- NetworkManager.InboundHandlerTuplePacketListener inboundhandlertuplepacketlistener = (NetworkManager.InboundHandlerTuplePacketListener)this.outboundPacketsQueue.poll(); + this.dispatchPacket(inboundhandlertuplepacketlistener.field_150774_a, inboundhandlertuplepacketlistener.field_150773_b); + } + } @@ -208,7 +233,15 @@ { for (int i = 1000; !this.receivedPacketsQueue.isEmpty() && i >= 0; --i) @@ -123,3 +135,9 @@ static class InboundHandlerTuplePacketListener { private final Packet field_150774_a; +@@ -334,4 +377,4 @@ + this.field_150773_b = p_i45146_2_; + } + } +-} ++}