From a49c013c8949e1acda9d9dd41f1de55695140cc2 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Mon, 9 Mar 2026 20:40:58 -0700 Subject: [PATCH] Fix SMSG_RESUME_CAST_BAR: separate from unrelated opcodes in fallthrough group SMSG_LOOT_LIST, SMSG_COMPLAIN_RESULT, SMSG_ITEM_REFUND_INFO_RESPONSE, and SMSG_ITEM_ENCHANT_TIME_UPDATE were incorrectly falling through to the SMSG_RESUME_CAST_BAR handler, causing those packets to be parsed as cast bar resume data with a completely different wire format. --- src/game/game_handler.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/game/game_handler.cpp b/src/game/game_handler.cpp index 5276d6f7..5146e98d 100644 --- a/src/game/game_handler.cpp +++ b/src/game/game_handler.cpp @@ -4730,6 +4730,10 @@ void GameHandler::handlePacket(network::Packet& packet) { case Opcode::SMSG_ITEM_REFUND_INFO_RESPONSE: case Opcode::SMSG_ITEM_ENCHANT_TIME_UPDATE: case Opcode::SMSG_LOOT_LIST: + // Consume — not yet processed + packet.setReadPos(packet.getSize()); + break; + case Opcode::SMSG_RESUME_CAST_BAR: { // packed_guid caster + packed_guid target + uint32 spellId // + uint32 remainingMs + uint32 totalMs + uint8 schoolMask