aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/AuctionHouseHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2020-09-27 00:51:52 +0200
committerShauren <shauren.trinity@gmail.com>2022-02-28 12:45:06 +0100
commit569b5d6f04548cd874cc161cb67a62dcad792fb0 (patch)
tree98b4cc4f720694c815b32c2da1b4387632dc75fb /src/server/game/Handlers/AuctionHouseHandler.cpp
parente7fc68d74b4fe146b37d14f1b73dbbed421b9214 (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.cpp7
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)