From 634e9af9cb9dc379bf898a968eb2f4a50adf434d Mon Sep 17 00:00:00 2001 From: Adam Date: Wed, 9 Feb 2011 21:55:11 -0500 Subject: [PATCH] Fixed expiring session exceptions --- src/sessions.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/sessions.cpp b/src/sessions.cpp index f13683050..c125a4cb0 100644 --- a/src/sessions.cpp +++ b/src/sessions.cpp @@ -210,17 +210,16 @@ void del_session(const Anope::string &host) void expire_exceptions() { - for (std::vector::iterator it = exceptions.begin(), it_end = exceptions.end(); it != it_end; ) + for (unsigned i = exceptions.size(); i > 0; --i) { - Exception *e = *it; - std::vector::iterator curr_it = it++; + Exception *e = exceptions[i - 1]; if (!e->expires || e->expires > Anope::CurTime) continue; if (Config->WallExceptionExpire) ircdproto->SendGlobops(OperServ, "Session limit exception for %s has expired.", e->mask.c_str()); delete e; - exceptions.erase(curr_it); + exceptions.erase(exceptions.begin() + i - 1); } }