From 4fe56b2472cf4429e872f5bfefed9a3e617646ec Mon Sep 17 00:00:00 2001 From: psychon Date: Wed, 3 Feb 2010 16:47:48 +0000 Subject: [PATCH] partyline: Send the user list on forced rejoin When a client tries to part from a channel to which it was fixed, we sent it a join again to make it rejoin (bad irssi for not waiting for the server's reply to PART!). The problem here was that we didn't send the nicklist and thus the channel appeared empty. This fixes SF.net #2802684. git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1731 726aef4b-f618-498e-8847-2d620e286838 --- modules/partyline.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/partyline.cpp b/modules/partyline.cpp index 62bd7a07..f650b51c 100644 --- a/modules/partyline.cpp +++ b/modules/partyline.cpp @@ -313,6 +313,11 @@ public: } else { // some clients dont wait for the server to send an answer to a part, so we need to make them join again pUser->PutUser(":" + pUser->GetIRCNick().GetNickMask() + " JOIN " + pChannel->GetName()); + if (!pChannel->GetTopic().empty()) { + pUser->PutUser(":" + GetIRCServer(pUser) + " 332 " + pUser->GetIRCNick().GetNickMask() + " " + pChannel->GetName() + " :" + pChannel->GetTopic()); + } + const set& ssNicks = pChannel->GetNicks(); + SendNickList(pUser, ssNicks, pChannel->GetName()); } }