From c828c5f637c481228653be32eaab275de71fed8c Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Sat, 22 Sep 2018 17:18:21 -0400 Subject: [PATCH] Cleanup nickname protection --- .../Components/Chat/Providers/IrcProvider.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Tgstation.Server.Host/Components/Chat/Providers/IrcProvider.cs b/src/Tgstation.Server.Host/Components/Chat/Providers/IrcProvider.cs index ce081b13e7..12374f26fd 100644 --- a/src/Tgstation.Server.Host/Components/Chat/Providers/IrcProvider.cs +++ b/src/Tgstation.Server.Host/Components/Chat/Providers/IrcProvider.cs @@ -291,16 +291,17 @@ namespace Tgstation.Server.Host.Components.Chat.Providers listenTask = Task.Factory.StartNew(() => { - while (!disconnecting && client.IsConnected) + while (!disconnecting && client.IsConnected && client.Nickname != nickname) { client.ListenOnce(true); if (disconnecting || !client.IsConnected) break; client.Listen(false); //ensure we have the correct nick - if (client.Nickname != nickname && client.GetIrcUser(nickname) == null) + if (client.GetIrcUser(nickname) == null) client.RfcNick(nickname); } + client.Listen(); }, cancellationToken, TaskCreationOptions.LongRunning, TaskScheduler.Current); } catch (Exception e)