From 5132ea987e0e9b2c467ce27f24805ceef056c58c Mon Sep 17 00:00:00 2001 From: weabot Date: Sat, 2 Dec 2017 18:31:04 -0500 Subject: [PATCH] Avoid calling OnWho on every channel in the network WHO was called in. (#1461) --- src/IRCSock.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/IRCSock.cpp b/src/IRCSock.cpp index 11822ea3..8b581ea4 100644 --- a/src/IRCSock.cpp +++ b/src/IRCSock.cpp @@ -856,15 +856,13 @@ bool CIRCSock::OnNumericMessage(CNumericMessage& Message) { m_pNetwork->SetIRCNick(m_Nick); m_pNetwork->SetIRCServer(sServer); - const vector& vChans = m_pNetwork->GetChans(); - - for (CChan* pChan : vChans) { - pChan->OnWho(sNick, sIdent, sHost); - } - CChan* pChan = m_pNetwork->FindChan(sChan); - if (pChan && pChan->IsDetached()) { - return true; + + if (pChan) { + pChan->OnWho(sNick, sIdent, sHost); + if (pChan->IsDetached()) { + return true; + } } break;