mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-20 01:15:35 +01:00
* Crash Fix for ticket system on closing a ticket (pointer was deleted out of object holder), thanks Visagalis
--HG-- branch : trunk
This commit is contained in:
@@ -128,16 +128,20 @@ void WorldSession::HandleGMTicketDeleteOpcode( WorldPacket & /*recv_data*/)
|
||||
|
||||
GM_Ticket* ticket = ticketmgr.GetGMTicketByPlayer(GetPlayer()->GetGUID());
|
||||
|
||||
// Remove Tickets from Player
|
||||
ticketmgr.RemoveGMTicketByPlayer(GetPlayer()->GetGUID());
|
||||
// CHeck for Ticket
|
||||
if(ticket)
|
||||
{
|
||||
// Remove Tickets from Player
|
||||
|
||||
// Response - no errors
|
||||
WorldPacket data(SMSG_GMTICKET_DELETETICKET, 4);
|
||||
data << uint32(9);
|
||||
// Send Packet
|
||||
SendPacket(&data);
|
||||
|
||||
// Response - no errors
|
||||
WorldPacket data(SMSG_GMTICKET_DELETETICKET, 4);
|
||||
data << uint32(9);
|
||||
// Send Packet
|
||||
SendPacket(&data);
|
||||
|
||||
sWorld.SendGMText(LANG_COMMAND_TICKETPLAYERABANDON, GetPlayer()->GetName(), ticket->guid );
|
||||
sWorld.SendGMText(LANG_COMMAND_TICKETPLAYERABANDON, GetPlayer()->GetName(), ticket->guid );
|
||||
ticketmgr.RemoveGMTicketByPlayer(GetPlayer()->GetGUID());
|
||||
}
|
||||
}
|
||||
|
||||
void WorldSession::HandleGMTicketGetTicketOpcode( WorldPacket & /*recv_data*/)
|
||||
@@ -164,7 +168,6 @@ void WorldSession::HandleGMTicketGetTicketOpcode( WorldPacket & /*recv_data*/)
|
||||
|
||||
SendPacket(&data);
|
||||
|
||||
|
||||
}
|
||||
|
||||
void WorldSession::HandleGMTicketSystemStatusOpcode( WorldPacket & /*recv_data*/)
|
||||
|
||||
Reference in New Issue
Block a user