mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-03 20:03:50 +00:00
fix: SMSG_IGNORE_LIST read phantom string field after each GUID
The packet only contains uint8 count + count×uint64 GUIDs, but the handler called readString() after each GUID. This consumed raw bytes of subsequent GUIDs as a string, corrupting all entries after the first. Now stores GUIDs in ignoreListGuids_ and resolves names asynchronously via SMSG_NAME_QUERY_RESPONSE, matching the friends list pattern. Also fixes unsafe static_pointer_cast in ready check (no type guard) and removes redundant packetHasRemaining wrapper (duplicates Packet API).
This commit is contained in:
parent
0e814e9c4a
commit
35b952bc6f
3 changed files with 27 additions and 15 deletions
|
|
@ -2420,7 +2420,8 @@ private:
|
|||
std::vector<FactionStandingInit> initialFactions_;
|
||||
|
||||
// ---- Ignore list cache ----
|
||||
std::unordered_map<std::string, uint64_t> ignoreCache; // name -> guid
|
||||
std::unordered_map<std::string, uint64_t> ignoreCache; // name -> guid (UI display)
|
||||
std::unordered_set<uint64_t> ignoreListGuids_; // authoritative GUID set from server
|
||||
|
||||
// ---- Logout state ----
|
||||
bool loggingOut_ = false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue