This one is a hack-patch for a larger issue I haven't been able to track down. For some reason, sessions are being freed and left in the available session pool only to be attempted to be used later and cause a crash (as the memory was freed).
It's (extremely) ugly, but as far as I can tell it does the job fine enough.
As far as I know, this issue is limited to 1.298. There's no point porting it to 1.310 (it's a hack-patch anyway). # 00444D00 |> /EB 27 JMP SHORT 00444D29
# 00444D02 | |90 NOP
# 00444D29 |> \81FA DDDDDDDD CMP EDX,0DDDDDDDD
# 00444D2F |.^ 74 F2 JE SHORT 00444D23
# 00444D31 |. 3972 08 CMP DWORD PTR DS:[EDX+8],ESI
# 00444D34 \.^ EB CD JMP SHORT 00444D03All it does is check to make sure the memory was not freed (VC++ runtime will set it to 0xDDDDDDDD to indicate it's been 'deleted').
If anyone knows more about the issue itself, please let me know. Thanks. |