aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2013-10-19 09:31:47 -0700
committerMachiavelli <machiavelli.trinity@gmail.com>2013-10-19 09:31:47 -0700
commitb845e6af2be42d06aa8671c892cc40c816d0bedc (patch)
treebfaaca34cee891f9bce268d2c5a79923db854c2d /src
parent8ff52bf05d7bbbda430013be813e1f5e72ab645d (diff)
parent2b7f29fef2ded8d5859b9d69028143ab84e595dc (diff)
Merge pull request #10989 from Elron103/pullrequests2
Core/Tickets: Fix crash in TicketMgr::ResetTickets()
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Tickets/TicketMgr.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/server/game/Tickets/TicketMgr.cpp b/src/server/game/Tickets/TicketMgr.cpp
index ccfeb35e5b8..4cb7a8ffc18 100644
--- a/src/server/game/Tickets/TicketMgr.cpp
+++ b/src/server/game/Tickets/TicketMgr.cpp
@@ -257,9 +257,17 @@ void TicketMgr::Initialize()
void TicketMgr::ResetTickets()
{
- for (GmTicketList::const_iterator itr = _ticketList.begin(); itr != _ticketList.end(); ++itr)
+ for (GmTicketList::const_iterator itr = _ticketList.begin(); itr != _ticketList.end();)
+ {
if (itr->second->IsClosed())
- sTicketMgr->RemoveTicket(itr->second->GetId());
+ {
+ uint32 ticketId = itr->second->GetId();
+ ++itr;
+ sTicketMgr->RemoveTicket(ticketId);
+ }
+ else
+ ++itr;
+ }
_lastTicketId = 0;