aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/AuctionHouse/AuctionHouseMgr.cpp')
-rw-r--r--src/server/game/AuctionHouse/AuctionHouseMgr.cpp11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
index 0cf8f1f9b33..09de6c3b0ef 100644
--- a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
+++ b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
@@ -1532,18 +1532,13 @@ bool AuctionHouseObject::BuyCommodity(CharacterDatabaseTransaction trans, Player
return false;
}
- auto quote = _commodityQuotes.find(player->GetGUID());
- if (quote == _commodityQuotes.end())
+ auto quote = _commodityQuotes.extract(player->GetGUID());
+ if (!quote)
{
player->GetSession()->SendAuctionCommandResult(0, AuctionCommand::PlaceBid, AuctionResult::CommodityPurchaseFailed, delayForNextAction);
return false;
}
- std::shared_ptr<std::nullptr_t> removeQuote(nullptr, [this, quote](std::nullptr_t)
- {
- _commodityQuotes.erase(quote);
- });
-
uint64 totalPrice = 0;
uint32 remainingQuantity = quantity;
std::vector<AuctionPosting*> auctions;
@@ -1575,7 +1570,7 @@ bool AuctionHouseObject::BuyCommodity(CharacterDatabaseTransaction trans, Player
// something was bought between creating quote and finalizing transaction
// but we allow lower price if new items were posted at lower price
- if (totalPrice > quote->second.TotalPrice)
+ if (totalPrice > quote.mapped().TotalPrice)
{
player->GetSession()->SendAuctionCommandResult(0, AuctionCommand::PlaceBid, AuctionResult::CommodityPurchaseFailed, delayForNextAction);
return false;