diff --git a/modules/chanserv/cs_access.cpp b/modules/chanserv/cs_access.cpp index 444238ac1..4351ad355 100644 --- a/modules/chanserv/cs_access.cpp +++ b/modules/chanserv/cs_access.cpp @@ -219,6 +219,8 @@ private: return; } } + else if (!na && mask.find_first_of("!*@") != Anope::string::npos) + mask = Entry("", mask).GetNUHMask(); if (na) mask = na->nick; diff --git a/modules/chanserv/cs_flags.cpp b/modules/chanserv/cs_flags.cpp index 6a5bd56bc..31f920d33 100644 --- a/modules/chanserv/cs_flags.cpp +++ b/modules/chanserv/cs_flags.cpp @@ -145,6 +145,8 @@ class CommandCSFlags final return; } } + else if (!na && mask.find_first_of("!*@") != Anope::string::npos) + mask = Entry("", mask).GetNUHMask(); if (na) mask = na->nick; diff --git a/modules/chanserv/cs_xop.cpp b/modules/chanserv/cs_xop.cpp index 0fd085b58..909c24b09 100644 --- a/modules/chanserv/cs_xop.cpp +++ b/modules/chanserv/cs_xop.cpp @@ -193,6 +193,8 @@ private: return; } } + else if (!na && mask.find_first_of("!*@") != Anope::string::npos) + mask = Entry("", mask).GetNUHMask(); if (na) mask = na->nick;