summaryrefslogtreecommitdiff
path: root/modules/protocol/inspircd20.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/protocol/inspircd20.cpp')
-rw-r--r--modules/protocol/inspircd20.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/modules/protocol/inspircd20.cpp b/modules/protocol/inspircd20.cpp
index b27249234..eb2941ced 100644
--- a/modules/protocol/inspircd20.cpp
+++ b/modules/protocol/inspircd20.cpp
@@ -955,6 +955,15 @@ class ProtoInspIRCd20 : public Module
return EVENT_CONTINUE;
}
+
+ EventReturn OnChannelModeUnset(Channel *c, MessageSource &setter, ChannelMode *mode, const Anope::string &param) anope_override
+ {
+ if ((setter.GetUser() && setter.GetUser()->server == Me) || setter.GetServer() == Me || !setter.GetServer())
+ if (mode->name == "OPERPREFIX")
+ c->SetMode(c->ci->WhoSends(), mode, param, false);
+
+ return EVENT_CONTINUE;
+ }
};
MODULE_INIT(ProtoInspIRCd20)