summaryrefslogtreecommitdiff
path: root/src/users.cpp
diff options
context:
space:
mode:
authorMatt Schatz <genius3000@g3k.solutions>2018-07-14 17:36:16 -0600
committerMatt Schatz <genius3000@g3k.solutions>2018-07-14 17:38:37 -0600
commit38721993f1a6e33312f5127bbfa4f0eb16dfcf47 (patch)
treef9798dae7c50dd45c3e09ea713d0a710d9438e27 /src/users.cpp
parent368300d31990eeafc0c7835a21bc0f0835fed71b (diff)
Ensure SuperAdmin isn't left on when de-opering
Diffstat (limited to 'src/users.cpp')
-rw-r--r--src/users.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/users.cpp b/src/users.cpp
index f5fe90dc6..d7d87da5d 100644
--- a/src/users.cpp
+++ b/src/users.cpp
@@ -561,8 +561,13 @@ void User::RemoveModeInternal(const MessageSource &source, UserMode *um)
this->modes.erase(um->name);
if (um->name == "OPER")
+ {
--OperCount;
+ // Don't let people de-oper and remain a SuperAdmin
+ this->super_admin = false;
+ }
+
if (um->name == "CLOAK" || um->name == "VHOST")
{
this->vhost.clear();