diff options
-rw-r--r-- | include/xline.h | 2 | ||||
-rw-r--r-- | modules/operserv/akill.cpp | 1 | ||||
-rw-r--r-- | src/xline.cpp | 5 |
3 files changed, 4 insertions, 4 deletions
diff --git a/include/xline.h b/include/xline.h index 8f772fbe8..8b718ba93 100644 --- a/include/xline.h +++ b/include/xline.h @@ -27,7 +27,7 @@ /* An XLine, eg, anything added with operserv/akill, or any of the operserv/sxline commands */ class CoreExport XLine : public Serialize::Object { - void Recache(); + void Recache(const Anope::string &mask); Anope::string nick, user, host, real; friend class XLineType; diff --git a/modules/operserv/akill.cpp b/modules/operserv/akill.cpp index 34af97c76..8a752312a 100644 --- a/modules/operserv/akill.cpp +++ b/modules/operserv/akill.cpp @@ -355,6 +355,7 @@ class CommandOSAKill : public Command if (Anope::ReadOnly) source.Reply(_("Services are in read-only mode. Any changes made may not persist.")); } + public: CommandOSAKill(Module *creator) : Command(creator, "operserv/akill", 1, 2) , akills("xlinemanager/sgline") diff --git a/src/xline.cpp b/src/xline.cpp index d0e058f09..baaca5976 100644 --- a/src/xline.cpp +++ b/src/xline.cpp @@ -29,7 +29,7 @@ /* List of XLine managers we check users against in XLineManager::CheckAll */ std::vector<XLineManager *> XLineManager::XLineManagers; -void XLine::Recache() +void XLine::Recache(const Anope::string &xlmask) { delete regex; regex = nullptr; @@ -37,7 +37,6 @@ void XLine::Recache() delete c; c = nullptr; - Anope::string xlmask = GetMask(); if (xlmask.length() >= 2 && xlmask[0] == '/' && xlmask[xlmask.length() - 1] == '/' && Config->regex_flags) { Anope::string stripped_mask = xlmask.substr(1, xlmask.length() - 2); @@ -223,7 +222,7 @@ XLineManager *XLine::GetManager() void XLineType::Mask::OnSet(XLine *s, const Anope::string &value) { - s->Recache(); + s->Recache(value); } void XLineManager::RegisterXLineManager(XLineManager *xlm) |