fix(combatlog): validate packed guid bounds in spell go parser

This commit is contained in:
Kelsi 2026-03-14 10:40:54 -07:00
parent 4561eb8696
commit 5a9be91fac

View file

@ -3722,7 +3722,14 @@ bool SpellGoParser::parse(network::Packet& packet, SpellGoData& data) {
if (packet.getSize() - packet.getReadPos() < 17) return false;
size_t startPos = packet.getReadPos();
if (!hasFullPackedGuid(packet)) {
return false;
}
data.casterGuid = UpdateObjectParser::readPackedGuid(packet);
if (!hasFullPackedGuid(packet)) {
packet.setReadPos(startPos);
return false;
}
data.casterUnit = UpdateObjectParser::readPackedGuid(packet);
// Validate remaining fixed fields up to hitCount/missCount