diff options
Diffstat (limited to 'src')
4 files changed, 5 insertions, 14 deletions
diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.h b/src/server/game/AuctionHouse/AuctionHouseMgr.h index 583d05b5467..9227fb1c611 100644 --- a/src/server/game/AuctionHouse/AuctionHouseMgr.h +++ b/src/server/game/AuctionHouse/AuctionHouseMgr.h @@ -30,7 +30,6 @@ class Player; class WorldPacket; #define MIN_AUCTION_TIME (12*HOUR) -#define MAX_AUCTION_ITEMS 160 enum AuctionError { diff --git a/src/server/game/Handlers/AuctionHouseHandler.cpp b/src/server/game/Handlers/AuctionHouseHandler.cpp index 470e785fa85..d9602987ace 100644 --- a/src/server/game/Handlers/AuctionHouseHandler.cpp +++ b/src/server/game/Handlers/AuctionHouseHandler.cpp @@ -110,12 +110,6 @@ void WorldSession::SendAuctionOwnerBidNotification(AuctionEntry const* auction, //this void creates new auction and adds auction to some auctionhouse void WorldSession::HandleAuctionSellItem(WorldPackets::AuctionHouse::AuctionSellItem& packet) { - if (packet.Items.size() > MAX_AUCTION_ITEMS) - { - SendAuctionCommandResult(NULL, AUCTION_SELL_ITEM, ERR_AUCTION_DATABASE_ERROR); - return; - } - for (auto const& item : packet.Items) if (!item.Guid || !item.UseCount || item.UseCount > 1000) return; diff --git a/src/server/game/Server/Packets/AuctionHousePackets.cpp b/src/server/game/Server/Packets/AuctionHousePackets.cpp index abc5d20ae90..56c38d5d18e 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.cpp +++ b/src/server/game/Server/Packets/AuctionHousePackets.cpp @@ -138,15 +138,13 @@ void WorldPackets::AuctionHouse::AuctionSellItem::Read() _worldPacket >> BuyoutPrice; _worldPacket >> RunTime; - uint8 ItemsCount = _worldPacket.ReadBits(5); - _worldPacket.FlushBits(); + Items.resize(_worldPacket.ReadBits(5)); + _worldPacket.ResetBitPos(); - for (uint8 i = 0; i < ItemsCount; i++) + for (WorldPackets::AuctionHouse::AuctionSellItem::AuctionItemForSale& item : Items) { - WorldPackets::AuctionHouse::AuctionSellItem::AuctionItemForSale item; _worldPacket >> item.Guid; _worldPacket >> item.UseCount; - Items.emplace_back(item); } } @@ -162,7 +160,7 @@ void WorldPackets::AuctionHouse::AuctionListBidderItems::Read() _worldPacket >> Auctioneer; _worldPacket >> Offset; uint8 auctionItemIDsCount = _worldPacket.ReadBits(7); - _worldPacket.FlushBits(); + _worldPacket.ResetBitPos(); for (uint8 i = 0; i < auctionItemIDsCount; i++) { diff --git a/src/server/game/Server/Packets/AuctionHousePackets.h b/src/server/game/Server/Packets/AuctionHousePackets.h index 6f3a908c4b8..17d7ee89e56 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.h +++ b/src/server/game/Server/Packets/AuctionHousePackets.h @@ -133,7 +133,7 @@ namespace WorldPackets ObjectGuid Auctioneer; uint64 MinBid = 0; uint32 RunTime = 0; - std::vector<AuctionItemForSale> Items; + Array<AuctionItemForSale, 32> Items; }; class AuctionPlaceBid final : public ClientPacket |