diff options
| author | Shauren <shauren.trinity@gmail.com> | 2020-09-27 00:51:52 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-02-28 12:45:06 +0100 |
| commit | 569b5d6f04548cd874cc161cb67a62dcad792fb0 (patch) | |
| tree | 98b4cc4f720694c815b32c2da1b4387632dc75fb /src/server/game/Handlers/AuctionHouseHandler.cpp | |
| parent | e7fc68d74b4fe146b37d14f1b73dbbed421b9214 (diff) | |
Core/Auction House: Eliminate blocking db queries for account permissions when expiring auctions that have offline bidders
(cherry picked from commit d0d0f51f325e4ae42c9bef7606fed4f4c00c98d6)
Diffstat (limited to 'src/server/game/Handlers/AuctionHouseHandler.cpp')
| -rw-r--r-- | src/server/game/Handlers/AuctionHouseHandler.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
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) |
