From 132a4ee98908afcf19b9db59b93742fb58f736e1 Mon Sep 17 00:00:00 2001 From: MedicOP Date: Wed, 16 Jan 2019 15:00:37 +0100 Subject: [PATCH] Fix sync issue in PlayerLoggedinHandler (#326) --- src/net/server/channel/handlers/PlayerLoggedinHandler.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/net/server/channel/handlers/PlayerLoggedinHandler.java b/src/net/server/channel/handlers/PlayerLoggedinHandler.java index 2081c59d6e..e6a3406369 100644 --- a/src/net/server/channel/handlers/PlayerLoggedinHandler.java +++ b/src/net/server/channel/handlers/PlayerLoggedinHandler.java @@ -160,6 +160,9 @@ public final class PlayerLoggedinHandler extends AbstractMaplePacketHandler { c.lockClient(); // Sync this to prevent wrong login state for double channel changes try { int state = c.getLoginState(); + if (state == MapleClient.LOGIN_LOGGEDIN) { + return; + } if (state != MapleClient.LOGIN_SERVER_TRANSITION || !allowLogin) { c.setPlayer(null); c.announce(MaplePacketCreator.getAfterLoginError(7));