NetHook2 emsg descriptors 'fix' for steam client beta#765
NetHook2 emsg descriptors 'fix' for steam client beta#765yaakov-h merged 1 commit intoSteamRE:masterfrom m4dEngi:netHook_beta
Conversation
Codecov Report
@@ Coverage Diff @@
## master #765 +/- ##
==========================================
+ Coverage 22.75% 22.77% +0.02%
==========================================
Files 94 95 +1
Lines 9309 9329 +20
Branches 763 772 +9
==========================================
+ Hits 2118 2125 +7
- Misses 7064 7069 +5
- Partials 127 135 +8
Continue to review full report at Codecov.
|
|
It's still a bad piece of code, because we can no longer tell even the correct size of emsg list without overcomplicating code. Maybe it'll be a better idea to use CMessageList::FindMessageInfoForEMsg instead and get names using returned MsgInfo_t structs for incoming/outgoing packets? |
This comment has been minimized.
This comment has been minimized.
|
Confirmed as working. Interestingly, instead of Is there anything we can do to preserve |
This comment has been minimized.
This comment has been minimized.
There is, probably, I'm just too stupid/lazy to do it. It looks like they changed emsglist class internals. EMsgs are now dynamically pushed on vector. Old EMsg structs are still there, but i'm not sure that whole list can be safely read sequentially, because its size is unknown( on windows list populated in a while loop until it hits record with emsgid 0xFFFFFFFF, on osx it's the same while loop but until it hits next symbol ) and string descriptors are not populated before constructor is called. The reasons why i switched to using PchMsgNameFromEMsg
|
It's still possible to get descriptors after msglist initialization.