diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/twitch/TwitchPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/twitch/TwitchPlugin.java index d70c3b7ed6..275eea5d54 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/twitch/TwitchPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/twitch/TwitchPlugin.java @@ -24,6 +24,7 @@ */ package net.runelite.client.plugins.twitch; +import com.google.common.base.Strings; import com.google.inject.Provides; import java.time.temporal.ChronoUnit; import java.util.Map; @@ -98,9 +99,16 @@ public class TwitchPlugin extends Plugin implements TwitchListener, ChatboxInput private synchronized void connect() { - if (twitchConfig.username() != null - && twitchConfig.oauthToken() != null - && twitchConfig.channel() != null) + if (twitchIRCClient != null) + { + log.debug("Terminating Twitch client {}", twitchIRCClient); + twitchIRCClient.close(); + twitchIRCClient = null; + } + + if (!Strings.isNullOrEmpty(twitchConfig.username()) + && !Strings.isNullOrEmpty(twitchConfig.oauthToken()) + && !Strings.isNullOrEmpty(twitchConfig.channel())) { String channel = twitchConfig.channel().toLowerCase(); if (!channel.startsWith("#")) @@ -110,11 +118,6 @@ public class TwitchPlugin extends Plugin implements TwitchListener, ChatboxInput log.debug("Connecting to Twitch as {}", twitchConfig.username()); - if (twitchIRCClient != null) - { - twitchIRCClient.close(); - } - twitchIRCClient = new TwitchIRCClient( this, twitchConfig.username(),