summaryrefslogtreecommitdiff
path: root/src/mode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mode.cpp')
-rw-r--r--src/mode.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mode.cpp b/src/mode.cpp
index cd825d7a2..c4969d467 100644
--- a/src/mode.cpp
+++ b/src/mode.cpp
@@ -286,8 +286,8 @@ ModeAction ModeParser::TryMode(User* user, User* targetuser, Channel* chan, Mode
if (IS_LOCAL(user) && !user->IsOper())
{
- char* disabled = (type == MODETYPE_CHANNEL) ? ServerInstance->Config->DisabledCModes : ServerInstance->Config->DisabledUModes;
- if (disabled[modechar - 'A'])
+ const std::bitset<64>& disabled = (type == MODETYPE_CHANNEL) ? ServerInstance->Config->DisabledCModes : ServerInstance->Config->DisabledUModes;
+ if (disabled.test(modechar - 'A'))
{
user->WriteNumeric(ERR_NOPRIVILEGES, InspIRCd::Format("Permission Denied - %s mode %c has been locked by the administrator",
type == MODETYPE_CHANNEL ? "channel" : "user", modechar));