diff --git a/LaunchServer/src/main/java/pro/gravit/launchserver/socket/Client.java b/LaunchServer/src/main/java/pro/gravit/launchserver/socket/Client.java index 4ce6a1ad..382496c8 100644 --- a/LaunchServer/src/main/java/pro/gravit/launchserver/socket/Client.java +++ b/LaunchServer/src/main/java/pro/gravit/launchserver/socket/Client.java @@ -36,9 +36,14 @@ public class Client { public Map serializableProperties; - public transient AtomicInteger refCount = new AtomicInteger(1); + public transient AtomicInteger refCount; public Client(UUID session) { + this(session, 1); + } + + public Client(UUID session, int initialRefCount) { + refCount = new AtomicInteger(initialRefCount); this.session = session; timestamp = System.currentTimeMillis(); type = null; diff --git a/LaunchServer/src/main/java/pro/gravit/launchserver/socket/response/auth/ExitResponse.java b/LaunchServer/src/main/java/pro/gravit/launchserver/socket/response/auth/ExitResponse.java index 94effdc4..82e17f7f 100644 --- a/LaunchServer/src/main/java/pro/gravit/launchserver/socket/response/auth/ExitResponse.java +++ b/LaunchServer/src/main/java/pro/gravit/launchserver/socket/response/auth/ExitResponse.java @@ -45,7 +45,7 @@ public void execute(ChannelHandlerContext ctx, Client client) { sendError("Exit internal error"); return; } - Client newClient = new Client(null); + Client newClient = new Client(null, 0); newClient.checkSign = client.checkSign; handler.setClient(newClient); AuthSupportExit supportExit = client.auth.core.isSupport(AuthSupportExit.class);