diff options
| author | ariel- <ariel-@users.noreply.github.com> | 2017-04-12 13:31:11 -0300 |
|---|---|---|
| committer | ariel- <ariel-@users.noreply.github.com> | 2017-04-12 13:31:11 -0300 |
| commit | d914c55c0585fe31a9a1b9fe4e9d4a9b498e8e8f (patch) | |
| tree | 589985849997e38ec9f6ffe3bedfcffe8ed0703d /src | |
| parent | 83177e771a373514913d066e14d5a7f9775407fe (diff) | |
Core/Player: fix use after free crash
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5db36e22530..e5620a0e0b0 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -13400,10 +13400,11 @@ void Player::RemoveItemFromBuyBackSlot(uint32 slot, bool del) pItem->RemoveFromWorld(); if (del) { - pItem->SetState(ITEM_REMOVED, this); if (ItemTemplate const* itemTemplate = pItem->GetTemplate()) if (itemTemplate->Flags & ITEM_FLAG_HAS_LOOT) sLootItemStorage->RemoveStoredLootForContainer(pItem->GetGUID().GetCounter()); + + pItem->SetState(ITEM_REMOVED, this); } } |
