From b94c45340e153254f9dd06ecc3445222f31d0220 Mon Sep 17 00:00:00 2001 From: brain Date: Fri, 9 Nov 2007 21:51:48 +0000 Subject: Roadmap item "Fix jointhrottle to not try 'throttle' clients during a netmerge (requires changing join event to be aware of netmerge?)" -- 1.2 only requires an extra parameter to OnUserJoin, bool sync. usually false, but FJOIN code during burst sets it to true. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8552 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_delayjoin.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/modules/m_delayjoin.cpp') diff --git a/src/modules/m_delayjoin.cpp b/src/modules/m_delayjoin.cpp index 435148c61..9d9a4007e 100644 --- a/src/modules/m_delayjoin.cpp +++ b/src/modules/m_delayjoin.cpp @@ -118,7 +118,7 @@ class ModuleDelayJoin : public Module return 0; } - virtual void OnUserJoin(User* user, Channel* channel, bool &silent) + virtual void OnUserJoin(User* user, Channel* channel, bool sync, bool &silent) { if (channel->IsModeSet('D')) { @@ -191,6 +191,10 @@ class ModuleDelayJoin : public Module /* Display the join to everyone else (the user who joined got it earlier) */ this->WriteCommonFrom(user, channel, "JOIN %s", channel->name); + std::string n = this->ServerInstance->Modes->ModeString(user, channel); + if (n.length() > 0) + this->WriteCommonFrom(user, channel, "MODE %s +%s", channel->name, n.c_str()); + /* Shrink off the neccessary metadata for a specific channel */ user->Shrink(std::string("delayjoin_")+channel->name); -- cgit v1.2.3