summaryrefslogtreecommitdiff
path: root/modules/commands/cs_drop.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/commands/cs_drop.cpp')
-rw-r--r--modules/commands/cs_drop.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/modules/commands/cs_drop.cpp b/modules/commands/cs_drop.cpp
index e9736851a..abdbed17e 100644
--- a/modules/commands/cs_drop.cpp
+++ b/modules/commands/cs_drop.cpp
@@ -53,16 +53,17 @@ class CommandCSDrop : public Command
return;
}
- if (ci->c && ModeManager::FindChannelModeByName(CMODE_REGISTERED))
- ci->c->RemoveMode(NULL, CMODE_REGISTERED, "", false);
-
bool override = (ci->HasFlag(CI_SECUREFOUNDER) ? !IsFounder(u, ci) : !ci->AccessFor(u).HasPriv("FOUNDER"));
Log(override ? LOG_OVERRIDE : LOG_COMMAND, u, this, ci) << "(founder was: " << (ci->GetFounder() ? ci->GetFounder()->display : "none") << ")";
+ Channel *c = ci->c;
delete ci;
source.Reply(_("Channel \002%s\002 has been dropped."), chan.c_str());
+ if (c)
+ c->CheckModes();
+
FOREACH_MOD(I_OnChanDrop, OnChanDrop(chan));
return;