summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/NetworkManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/minecraft/server/NetworkManager.java')
-rw-r--r--src/main/java/net/minecraft/server/NetworkManager.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
index c60abf13..a2bdfa32 100644
--- a/src/main/java/net/minecraft/server/NetworkManager.java
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
@@ -13,6 +13,8 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
+import java.util.Queue;
+import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.atomic.AtomicInteger;
import javax.crypto.SecretKey;
@@ -30,7 +32,7 @@ public class NetworkManager implements INetworkManager {
private volatile DataOutputStream output;
private volatile boolean n = true;
private volatile boolean o;
- private java.util.Queue inboundQueue = new java.util.concurrent.ConcurrentLinkedQueue(); // CraftBukkit - Concurrent linked queue
+ private Queue inboundQueue = new ConcurrentLinkedQueue();
private List highPriorityQueue = Collections.synchronizedList(new ArrayList());
private List lowPriorityQueue = Collections.synchronizedList(new ArrayList());
private Connection connection;
@@ -282,7 +284,7 @@ public class NetworkManager implements INetworkManager {
int i = 1000;
while (!this.inboundQueue.isEmpty() && i-- >= 0) {
- Packet packet = (Packet) this.inboundQueue.poll(); // CraftBukkit - remove -> poll
+ Packet packet = (Packet) this.inboundQueue.poll();
// CraftBukkit start
if (this.connection instanceof PendingConnection ? ((PendingConnection) this.connection).b : ((PlayerConnection) this.connection).disconnected) {
@@ -290,7 +292,9 @@ public class NetworkManager implements INetworkManager {
}
// CraftBukkit end
- packet.handle(this.connection);
+ if (packet != null && !this.connection.c()) {
+ packet.handle(this.connection);
+ }
}
this.a();