diff --git a/core/src/main/java/org/geysermc/geyser/session/GeyserSession.java b/core/src/main/java/org/geysermc/geyser/session/GeyserSession.java index eb095907a1a..0c99bea35d8 100644 --- a/core/src/main/java/org/geysermc/geyser/session/GeyserSession.java +++ b/core/src/main/java/org/geysermc/geyser/session/GeyserSession.java @@ -1201,12 +1201,8 @@ public void disconnect(Component reason) { // Remove from session manager geyser.getSessionManager().removeSession(this); - if (authData != null) { - PendingMicrosoftAuthentication.AuthenticationTask task = geyser.getPendingMicrosoftAuthentication().getTask(authData.xuid()); - if (task != null) { - task.resetRunningFlow(); - } - } + // Don't cancel any pending Microsoft auth here - the whole point of PendingMicrosoftAuthentication + // is to let mobile users disconnect to finish auth in the browser. Task cleans up on timeout. } if (tickThread != null) {