From 44898de87edde278d586494d20ba29ce0763fb32 Mon Sep 17 00:00:00 2001 From: brain Date: Tue, 25 Sep 2007 00:45:12 +0000 Subject: Fix for bug #415, affects only trunk (wish i'd known this before i started!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8079 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_deaf.cpp | 9 +++++++-- src/modules/m_silence_ext.cpp | 2 +- src/modules/m_spanningtree/utils.cpp | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) (limited to 'src/modules') diff --git a/src/modules/m_deaf.cpp b/src/modules/m_deaf.cpp index b5328f785..1689f843c 100644 --- a/src/modules/m_deaf.cpp +++ b/src/modules/m_deaf.cpp @@ -68,7 +68,7 @@ class ModuleDeaf : public Module void Implements(char* List) { - List[I_OnUserPreMessage] = List[I_OnUserPreNotice] = List[I_OnRehash] = 1; + List[I_OnUserPreMessage] = List[I_OnUserPreNotice] = List[I_OnRehash] = List[I_OnBuildExemptList] = 1; } virtual void OnRehash(userrec* user, const std::string&) @@ -104,7 +104,12 @@ class ModuleDeaf : public Module return 0; } - virtual void BuildDeafList(MessageType message_type, chanrec* chan, userrec* sender, char status, std::string &text, CUList &exempt_list) + virtual void OnBuildExemptList(MessageType message_type, chanrec* chan, userrec* sender, char status, CUList &exempt_list, const std::string &text) + { + BuildDeafList(message_type, chan, sender, status, text, exempt_list); + } + + virtual void BuildDeafList(MessageType message_type, chanrec* chan, userrec* sender, char status, const std::string &text, CUList &exempt_list) { CUList *ulist; bool is_a_uline; diff --git a/src/modules/m_silence_ext.cpp b/src/modules/m_silence_ext.cpp index 3c1dcec27..71f37ccb1 100644 --- a/src/modules/m_silence_ext.cpp +++ b/src/modules/m_silence_ext.cpp @@ -274,7 +274,7 @@ class ModuleSilence : public Module output = output + " ESILENCE SILENCE=" + ConvToStr(maxsilence); } - virtual void OnBuildExemptList(MessageType message_type, chanrec* chan, userrec* sender, char status, CUList &exempt_list) + virtual void OnBuildExemptList(MessageType message_type, chanrec* chan, userrec* sender, char status, CUList &exempt_list, const std::string &text) { int public_silence = (message_type == MSG_PRIVMSG ? SILENCE_CHANNEL : SILENCE_CNOTICE); CUList *ulist; diff --git a/src/modules/m_spanningtree/utils.cpp b/src/modules/m_spanningtree/utils.cpp index 0bf8dd994..6385b7a12 100644 --- a/src/modules/m_spanningtree/utils.cpp +++ b/src/modules/m_spanningtree/utils.cpp @@ -303,7 +303,7 @@ bool SpanningTreeUtilities::DoOneToAllButSenderRaw(const std::string &data, cons { CUList elist; TreeServerList list; - FOREACH_MOD(I_OnBuildExemptList, OnBuildExemptList((command == "PRIVMSG" ? MSG_PRIVMSG : MSG_NOTICE), c, u, pfx, elist)); + FOREACH_MOD(I_OnBuildExemptList, OnBuildExemptList((command == "PRIVMSG" ? MSG_PRIVMSG : MSG_NOTICE), c, u, pfx, elist, params[1])); GetListOfServersForChannel(c,list,pfx,elist); for (TreeServerList::iterator i = list.begin(); i != list.end(); i++) -- cgit v1.2.3