diff options
| author | 2009-08-03 21:44:12 +0000 | |
|---|---|---|
| committer | 2009-08-03 21:44:12 +0000 | |
| commit | cdb8a029dc4fcc28b2d84f63a0f3eda42b99f526 (patch) | |
| tree | 124120edbda385082ed907c8684c332e9ed55b6f /src/users.cpp | |
| parent | Revert "Don't do all the oper gubbins if the opertype doesn't exist. I've abs... (diff) | |
Comment on what looks like incorrect behaviour in User::Oper().
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11477 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/users.cpp')
| -rw-r--r-- | src/users.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/users.cpp b/src/users.cpp index 2871653bb..26a790dfa 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -758,6 +758,13 @@ void User::Oper(const std::string &opertype, const std::string &opername) this->oper.assign(opertype, 0, 512); ServerInstance->Users->all_opers.push_back(this); + /* + * This might look like it's in the wrong place. + * It is *not*! + * + * For multi-network servers, we may not have the opertypes of the remote server, but we still want to mark the user as an oper of that type. + * -- w00t + */ opertype_t::iterator iter_opertype = ServerInstance->Config->opertypes.find(this->oper.c_str()); if (iter_opertype != ServerInstance->Config->opertypes.end()) { |
