From 66c2886ded596b70dcb026448aeaf90ec9b632b8 Mon Sep 17 00:00:00 2001 From: Sotr Date: Mon, 18 Mar 2019 19:33:49 +0800 Subject: [PATCH] Better treat the disconnect flag --- src/main/java/net/minecraft/server/NetworkManager.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java index be70697dc..91beb0173 100644 --- a/src/main/java/net/minecraft/server/NetworkManager.java +++ b/src/main/java/net/minecraft/server/NetworkManager.java @@ -21,7 +21,6 @@ import io.netty.util.concurrent.GenericFutureListener; import java.net.SocketAddress; import java.util.Iterator; import java.util.Queue; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.locks.ReentrantReadWriteLock; import javax.annotation.Nullable; import javax.crypto.SecretKey; @@ -59,7 +58,7 @@ public class NetworkManager extends SimpleChannelInboundHandler> { private PacketListener packetListener; private IChatBaseComponent n; private boolean o; - private AtomicBoolean p = new AtomicBoolean(false); // Akarin + private volatile boolean p; // Akarin - add volatile private int q; private int r; private float s; @@ -444,10 +443,10 @@ public class NetworkManager extends SimpleChannelInboundHandler> { public void handleDisconnection() { if (this.channel != null && !this.channel.isOpen()) { - if (!this.p.compareAndSet(false, true)) { // Akarin + if (this.p) { NetworkManager.g.warn("handleDisconnection() called twice"); } else { - // this.p = true; // Akarin + this.p = true; if (this.j() != null) { this.i().a(this.j()); } else if (this.i() != null) {