summaryrefslogtreecommitdiff
path: root/modules/commands/cs_set.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2013-12-17 11:02:06 -0500
committerAdam <Adam@anope.org>2013-12-17 11:02:06 -0500
commite6544a06f4087c3f1d3c8225e7a0fab232ec660d (patch)
treed533b1d88aa1212d567c8cb1999e8586736b7df9 /modules/commands/cs_set.cpp
parent1ab7d536491064656b76c319760bac369a8fabf4 (diff)
Update last_modes when keepmodes is set on or off
Diffstat (limited to 'modules/commands/cs_set.cpp')
-rw-r--r--modules/commands/cs_set.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/modules/commands/cs_set.cpp b/modules/commands/cs_set.cpp
index d32669701..0c5e9b6c6 100644
--- a/modules/commands/cs_set.cpp
+++ b/modules/commands/cs_set.cpp
@@ -364,15 +364,18 @@ class CommandCSSetKeepModes : public Command
Log(source.AccessFor(ci).HasPriv("SET") ? LOG_COMMAND : LOG_OVERRIDE, source, this, ci) << "to enable keep modes";
ci->Extend<bool>("CS_KEEP_MODES");
source.Reply(_("Keep modes for %s is now \002on\002."), ci->name.c_str());
+ if (ci->c)
+ ci->last_modes = ci->c->GetModes();
}
else if (params[1].equals_ci("OFF"))
{
Log(source.AccessFor(ci).HasPriv("SET") ? LOG_COMMAND : LOG_OVERRIDE, source, this, ci) << "to disable keep modes";
ci->Shrink<bool>("CS_KEEP_MODES");
source.Reply(_("Keep modes for %s is now \002off\002."), ci->name.c_str());
+ ci->last_modes.clear();
}
else
- this->OnSyntaxError(source, "PEACE");
+ this->OnSyntaxError(source, "KEEPMODES");
}
bool OnHelp(CommandSource &source, const Anope::string &) anope_override