diff options
author | Machiavelli <machiavelli.trinity@gmail.com> | 2013-10-19 09:31:47 -0700 |
---|---|---|
committer | Machiavelli <machiavelli.trinity@gmail.com> | 2013-10-19 09:31:47 -0700 |
commit | b845e6af2be42d06aa8671c892cc40c816d0bedc (patch) | |
tree | bfaaca34cee891f9bce268d2c5a79923db854c2d /src | |
parent | 8ff52bf05d7bbbda430013be813e1f5e72ab645d (diff) | |
parent | 2b7f29fef2ded8d5859b9d69028143ab84e595dc (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.cpp | 12 |
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; |