From 15a27c69ba35bfdf8f6a5a7bdc1e549aa00a5ac3 Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 9 Jan 2014 17:01:18 -0500 Subject: [PATCH] Move oper count and vhost stuff to set/remove mode internal --- src/users.cpp | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/src/users.cpp b/src/users.cpp index 55a3a84ab..9256eba7b 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -463,6 +463,12 @@ void User::SetModeInternal(const MessageSource &source, UserMode *um, const Anop this->modes[um->name] = param; + if (um->name == "OPER") + ++OperCount; + + if (um->name == "CLOAK" || um->name == "VHOST") + this->UpdateHost(); + FOREACH_MOD(OnUserModeSet, (source, this, um->name)); } @@ -473,6 +479,15 @@ void User::RemoveModeInternal(const MessageSource &source, UserMode *um) this->modes.erase(um->name); + if (um->name == "OPER") + --OperCount; + + if (um->name == "CLOAK" || um->name == "VHOST") + { + this->vhost.clear(); + this->UpdateHost(); + } + FOREACH_MOD(OnUserModeUnset, (source, this, um->name)); } @@ -592,20 +607,6 @@ void User::SetModesInternal(const MessageSource &source, const char *umodes, ... } else this->RemoveModeInternal(source, um); - - if (um->name == "OPER") - { - if (add) - ++OperCount; - else - --OperCount; - } - else if (um->name == "CLOAK" || um->name == "VHOST") - { - if (!add && !this->vhost.empty()) - this->vhost.clear(); - this->UpdateHost(); - } } }