Fix Classic item query packet format for auction house item names

Vanilla CMSG_ITEM_QUERY_SINGLE has no GUID field (just uint32 entry),
causing servers to reject the oversized WotLK-format packets. Also fix
response parser: remove nonexistent statsCount field and use 5 damage
types instead of 2 to match Vanilla protocol.
This commit is contained in:
Kelsi 2026-02-17 01:05:15 -08:00
parent a1457ee801
commit 67fdd7809a
3 changed files with 21 additions and 6 deletions

View file

@ -5547,7 +5547,9 @@ void GameHandler::queryItemInfo(uint32_t entry, uint64_t guid) {
// If we don't have the item object's GUID (e.g. visible equipment decoding),
// fall back to the player's GUID to keep the request non-zero.
uint64_t queryGuid = (guid != 0) ? guid : playerGuid;
auto packet = ItemQueryPacket::build(entry, queryGuid);
auto packet = packetParsers_
? packetParsers_->buildItemQuery(entry, queryGuid)
: ItemQueryPacket::build(entry, queryGuid);
socket->send(packet);
}