diff options
| author | DukePyrolator <DukePyrolator@anope.org> | 2010-12-26 09:36:45 +0100 |
|---|---|---|
| committer | DukePyrolator <DukePyrolator@anope.org> | 2010-12-26 09:36:45 +0100 |
| commit | f638d1078ab5ab630ce9393fe87edd630abdf75a (patch) | |
| tree | 2afbda6b0a653324657e41d3ddc8a698a37e3b29 /src/operserv.cpp | |
| parent | 4235df2b28a26cb166a250d016f1fd9b417cb94b (diff) | |
| parent | 8af2465a61b09e020c1324acfb78bbf912869fc8 (diff) | |
Merge branch '1.9' of ssh://anope.git.sourceforge.net/gitroot/anope/anope into 1.9
Diffstat (limited to 'src/operserv.cpp')
| -rw-r--r-- | src/operserv.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/operserv.cpp b/src/operserv.cpp index c76b34375..6437fa2c9 100644 --- a/src/operserv.cpp +++ b/src/operserv.cpp @@ -324,9 +324,8 @@ XLine *XLineManager::GetEntry(unsigned index) */ void XLineManager::Clear() { - for (std::vector<XLine *>::iterator it = this->XLines.begin(), it_end = this->XLines.end(); it != it_end; ++it) - delete *it; - this->XLines.clear(); + while (!this->XLines.empty()) + this->DelXLine(this->XLines.front()); } /** Add an entry to this XLine Manager @@ -606,7 +605,7 @@ XLine *SNLineManager::Add(BotInfo *bi, User *u, const Anope::string &mask, time_ User *user = *it; ++it; - if (!user->HasMode(UMODE_OPER) && Anope::Match(user->realname, x->Mask)) + if (!user->HasMode(UMODE_OPER) && user->server != Me && Anope::Match(user->realname, x->Mask)) kill_user(Config->ServerName, user, rreason); } } @@ -698,7 +697,7 @@ XLine *SQLineManager::Add(BotInfo *bi, User *u, const Anope::string &mask, time_ UserContainer *uc = *it; ++it; - if (uc->user->HasMode(UMODE_OPER)) + if (uc->user->HasMode(UMODE_OPER) || uc->user->server == Me) continue; c->Kick(NULL, uc->user, "%s", reason.c_str()); } @@ -711,7 +710,7 @@ XLine *SQLineManager::Add(BotInfo *bi, User *u, const Anope::string &mask, time_ User *user = *it; ++it; - if (!user->HasMode(UMODE_OPER) && Anope::Match(user->nick, x->Mask)) + if (!user->HasMode(UMODE_OPER) && user->server != Me && Anope::Match(user->nick, x->Mask)) kill_user(Config->ServerName, user, rreason); } } |
