]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
m_noctcp: Fix noctcp user mode not applying to exempted channel ops.
authorRobby <robby@chatbelgie.be>
Wed, 18 Sep 2019 14:08:12 +0000 (16:08 +0200)
committerP. Powell <petpow@saberuk.com>
Thu, 24 Oct 2019 15:10:34 +0000 (16:10 +0100)
src/modules/m_noctcp.cpp

index 475151cb75167ce5b77d3342b87978a1e37adf9a..45f805ac9f493ee476ff2e3048304ad5fa5c4020 100644 (file)
@@ -69,6 +69,14 @@ class ModuleNoCTCP : public Module
                                        return MOD_RES_PASSTHRU;
 
                                Channel* c = target.Get<Channel>();
+                               const Channel::MemberMap& members = c->GetUsers();
+                               for (Channel::MemberMap::const_iterator member = members.begin(); member != members.end(); ++member)
+                               {
+                                       User* u = member->first;
+                                       if (u->IsModeSet(ncu))
+                                               details.exemptions.insert(u);
+                               }
+
                                ModResult res = CheckExemption::Call(exemptionprov, user, c, "noctcp");
                                if (res == MOD_RES_ALLOW)
                                        return MOD_RES_PASSTHRU;
@@ -78,14 +86,6 @@ class ModuleNoCTCP : public Module
                                        user->WriteNumeric(ERR_CANNOTSENDTOCHAN, c->name, "Can't send CTCP to channel (+C is set)");
                                        return MOD_RES_DENY;
                                }
-
-                               const Channel::MemberMap& members = c->GetUsers();
-                               for (Channel::MemberMap::const_iterator member = members.begin(); member != members.end(); ++member)
-                               {
-                                       User* u = member->first;
-                                       if (u->IsModeSet(ncu))
-                                               details.exemptions.insert(u);
-                               }
                                break;
                        }
                        case MessageTarget::TYPE_USER: