diff options
author | Adam <Adam@anope.org> | 2016-01-19 16:25:02 -0500 |
---|---|---|
committer | Adam <Adam@anope.org> | 2016-01-19 16:25:02 -0500 |
commit | 164b349ef9cfbc0f275333b60b0786848ce0f2e7 (patch) | |
tree | 114794e4954cf8924f926f09f02f7ff69b984be4 /src/config.cpp | |
parent | 4771af1cb89cd5d9a983d83e108b9fb8de9b5f52 (diff) |
Fix various inconsistencies/crashes related to having multiple opers configured for the same user through combinations of os_oper/config/m_sql_oper
Diffstat (limited to 'src/config.cpp')
-rw-r--r-- | src/config.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/config.cpp b/src/config.cpp index 18a6c5d39..b6972bc42 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -502,6 +502,13 @@ Conf::Conf() : Block("") if (!na) continue; + if (!na->nc || na->nc->o) + { + // If the account is already an oper it might mean two oper blocks for the same nick, or + // something else has configured them as an oper (like a module) + continue; + } + na->nc->o = o; Log() << "Tied oper " << na->nc->display << " to type " << o->ot->GetName(); } |