From e80a9f2a8175230776d240c342b1f46f8d949c2d Mon Sep 17 00:00:00 2001 From: prozacx Date: Sun, 9 Oct 2005 20:22:59 +0000 Subject: [PATCH] Fixed reattach problem when nick is in use. This was caused by a migration from UserSocks being moved into CUser git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@552 726aef4b-f618-498e-8847-2d620e286838 --- User.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/User.cpp b/User.cpp index bba58ca0..98e89b82 100644 --- a/User.cpp +++ b/User.cpp @@ -90,10 +90,13 @@ void CUser::IRCDisconnected() { void CUser::UserConnected(CUserSock* pUserSock) { m_vUserSocks.push_back(pUserSock); CString sConfNick = GetNick(); + CIRCSock* pIRCSock = GetIRCSock(); - /*if (ircsock.Nick().CaseCmp(CNick::Concat(sConfNick, GetAwaySuffix(), GetMaxNickLen())) == 0) { - PutIRC("NICK " + sConfNick); - } nigs */ + if (pIRCSock) { + if (pIRCSock->GetNick().CaseCmp(CNick::Concat(sConfNick, GetAwaySuffix(), pIRCSock->GetMaxNickLen())) == 0) { + PutIRC("NICK " + sConfNick); + } + } if (m_RawBuffer.IsEmpty()) { pUserSock->PutServ(":irc.znc.com 001 " + pUserSock->GetNick() + " :- Welcome to ZNC -"); @@ -101,7 +104,7 @@ void CUser::UserConnected(CUserSock* pUserSock) { unsigned int uIdx = 0; CString sLine; - while (m_RawBuffer.GetLine(GetNick(), sLine, uIdx++)) { + while (m_RawBuffer.GetLine(GetIRCNick().GetNick(), sLine, uIdx++)) { pUserSock->PutServ(sLine); } } @@ -113,7 +116,7 @@ void CUser::UserConnected(CUserSock* pUserSock) { unsigned int uIdx = 0; CString sLine; - while (m_MotdBuffer.GetLine(GetNick(), sLine, uIdx++)) { + while (m_MotdBuffer.GetLine(GetIRCNick().GetNick(), sLine, uIdx++)) { pUserSock->PutServ(sLine); } } @@ -126,7 +129,7 @@ void CUser::UserConnected(CUserSock* pUserSock) { } CString sBufLine; - while (m_QueryBuffer.GetNextLine(GetNick(), sBufLine)) { + while (m_QueryBuffer.GetNextLine(GetIRCNick().GetNick(), sBufLine)) { pUserSock->PutServ(sBufLine); } }