From 569b5d6f04548cd874cc161cb67a62dcad792fb0 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 27 Sep 2020 00:51:52 +0200 Subject: Core/Auction House: Eliminate blocking db queries for account permissions when expiring auctions that have offline bidders (cherry picked from commit d0d0f51f325e4ae42c9bef7606fed4f4c00c98d6) --- src/server/game/Handlers/AuctionHouseHandler.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/server/game/Handlers/AuctionHouseHandler.cpp') diff --git a/src/server/game/Handlers/AuctionHouseHandler.cpp b/src/server/game/Handlers/AuctionHouseHandler.cpp index 39f60749439..59ddbcbae8f 100644 --- a/src/server/game/Handlers/AuctionHouseHandler.cpp +++ b/src/server/game/Handlers/AuctionHouseHandler.cpp @@ -435,6 +435,10 @@ void WorldSession::HandleAuctionPlaceBid(WorldPackets::AuctionHouse::AuctionPlac player->ModifyMoney(-int64(priceToPay)); auction->Bidder = player->GetGUID(); auction->BidAmount = placeBid.BidAmount; + if (HasPermission(rbac::RBAC_PERM_LOG_GM_TRADE)) + auction->ServerFlags |= AuctionPostingServerFlag::GmLogBuyer; + else + auction->ServerFlags &= ~AuctionPostingServerFlag::GmLogBuyer; if (canBuyout && placeBid.BidAmount == auction->BuyoutOrUnitPrice) { @@ -450,7 +454,8 @@ void WorldSession::HandleAuctionPlaceBid(WorldPackets::AuctionHouse::AuctionPlac CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPD_AUCTION_BID); stmt->setUInt64(0, auction->Bidder.GetCounter()); stmt->setUInt64(1, auction->BidAmount); - stmt->setUInt32(2, auction->Id); + stmt->setUInt8(2, auction->ServerFlags.AsUnderlyingType()); + stmt->setUInt32(3, auction->Id); trans->Append(stmt); if (auction->BidderHistory.insert(player->GetGUID()).second) -- cgit v1.2.3