From 08164c9502c3a9db1810d2e8e1d291280b975aee Mon Sep 17 00:00:00 2001 From: danieldg Date: Sun, 15 Feb 2009 04:31:38 +0000 Subject: m_operprefix: Remove IS_LOCAL checks to also set/unset +y on remote opers Changes were not being propagated via FMODE. Fixes bug #730 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11108 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_operprefix.cpp | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'src/modules/m_operprefix.cpp') diff --git a/src/modules/m_operprefix.cpp b/src/modules/m_operprefix.cpp index 27c749b3d..6614b867b 100644 --- a/src/modules/m_operprefix.cpp +++ b/src/modules/m_operprefix.cpp @@ -123,7 +123,7 @@ class ModuleOperPrefixMode : public Module ServerInstance->Modules->Attach(eventlist, this, 6); } - virtual void PushChanMode(Channel* channel, User* user, bool negate = false) + void PushChanMode(Channel* channel, User* user, bool negate = false) { if (negate) DelPrefixChan(user, channel); @@ -141,10 +141,6 @@ class ModuleOperPrefixMode : public Module virtual void OnPostJoin(User *user, Channel *channel) { - // This may look wrong, but I don't think it is.. PushChanMode will send FMODE which should sort it all out. - if (!IS_LOCAL(user)) - return; - if (user && IS_OPER(user)) { if (user->IsModeSet('H')) @@ -167,7 +163,7 @@ class ModuleOperPrefixMode : public Module virtual void OnOper(User *user, const std::string&) { - if (user && IS_LOCAL(user) && !user->IsModeSet('H')) + if (user && !user->IsModeSet('H')) { for (UCListIter v = user->chans.begin(); v != user->chans.end(); v++) { @@ -182,10 +178,8 @@ class ModuleOperPrefixMode : public Module delete opm; } - virtual void CleanUser(User* user, bool quitting=false) + void CleanUser(User* user, bool quitting) { - if (!IS_LOCAL(user)) - return; std::set* ext; if (user->GetExt("m_operprefix",ext)) @@ -213,7 +207,7 @@ class ModuleOperPrefixMode : public Module if (target_type == TYPE_USER) { User* user = (User*)item; - CleanUser(user); + CleanUser(user, false); } } -- cgit v1.2.3