From 056d0b43831857c7258fa734d0ecac05858fa449 Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Sun, 27 Mar 2022 07:57:50 +0100 Subject: Pack the mode set more efficiently and add support for numeric modes. --- src/modules/m_disable.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/modules/m_disable.cpp') diff --git a/src/modules/m_disable.cpp b/src/modules/m_disable.cpp index a0be744e3..984470bed 100644 --- a/src/modules/m_disable.cpp +++ b/src/modules/m_disable.cpp @@ -57,7 +57,7 @@ private: // Disable the mode. ServerInstance->Logs.Log(MODNAME, LOG_DEBUG, "The %c (%s) %s mode has been disabled", mh->GetModeChar(), mh->name.c_str(), type == MODETYPE_CHANNEL ? "channel" : "user"); - status.set(chr - 'A'); + status.set(ModeParser::GetModeIndex(chr)); } } @@ -158,7 +158,7 @@ public: // If the mode is not disabled or the user has the servers/use-disabled-modes priv we do nothing. const ModeParser::ModeStatus& disabled = (change.mh->GetModeType() == MODETYPE_CHANNEL) ? chanmodes : usermodes; - if (!disabled.test(change.mh->GetModeChar() - 'A') || user->HasPrivPermission("servers/use-disabled-modes")) + if (!disabled.test(ModeParser::GetModeIndex(change.mh->GetModeChar())) || user->HasPrivPermission("servers/use-disabled-modes")) return MOD_RES_PASSTHRU; // The user has tried to change a disabled mode! -- cgit v1.3.1-10-gc9f91