diff --git a/ts3-client/core/src/main/java/com/ts3client/session/ServerSession.java b/ts3-client/core/src/main/java/com/ts3client/session/ServerSession.java index 94a9cd4..94883d5 100644 --- a/ts3-client/core/src/main/java/com/ts3client/session/ServerSession.java +++ b/ts3-client/core/src/main/java/com/ts3client/session/ServerSession.java @@ -180,13 +180,14 @@ public final class ServerSession { channel, target.channelPassword()); } + /** Leaves the server, or gives up a connect that is still under way. */ public void disconnect() { - if (conn.isConnected()) conn.disconnect(); + if (isBusy()) conn.disconnect(); } /** Synchronous teardown for shutdown paths, so the server sees us leave. */ public void shutdown() { - if (conn.isConnected()) conn.disconnectBlocking("Leaving"); + if (isBusy()) conn.disconnectBlocking("Leaving"); } /** Releases the background resources of a session that is being thrown away. */