diff --git a/IRCSock.cpp b/IRCSock.cpp index 9ae123ba..d6be8450 100644 --- a/IRCSock.cpp +++ b/IRCSock.cpp @@ -517,8 +517,10 @@ void CIRCSock::ReadLine(const CString& sData) { CChan* pChan = m_pUser->FindChan(sChan); if (pChan) { - pChan->RemNick(sKickedNick); MODULECALL(OnKick(Nick, sKickedNick, *pChan, sMsg), m_pUser, NULL, ); + // do not remove the nick till after the OnKick call, so modules + // can do Chan.FindNick or something to get more info. + pChan->RemNick(sKickedNick); } if (GetNick().Equals(sKickedNick) && pChan) {