It only crashes while mq2map plugin is loaded (I can hear the groans already). And will crash when you do a UI switch (changing your UI).
I know it's while a particular plugin is loaded, but am getting no other issues at all. And due to the nature of the problem, and that it doesn't crash IN mq2map, I'm reporting anyway.
Went thru removing a whole bunch of other plugins, and mq2map was the only one that I found made a difference. I do know that memory errors can be tricky to find and not necessarily where they 'appear' to be.
Seems to break here in MQ2CleanUI.cpp:
Code: Select all
015739B0 mov eax,dword ptr [esp+4]
015739B4 push eax
[color=red]015739B5 call DrawHUDText+0D0h (015738f0)[/color]
015739BA mov ecx,dword ptr [pArrayType+65B0h (015fbcd8)]
015739C0 push ecx
015739C1 call EnterMQ2Benchmark (01572420)
015739C6 call PluginsReloadUI (015aca40)
015739CB mov edx,dword ptr [pArrayType+65B0h (015fbcd8)]
015739D1 push edx
015739D2 call ExitMQ2Benchmark (01572450)
015739D7 add esp,8
015739DA ret 4
class CDisplayHook
{
public:
VOID CleanUI_Trampoline(VOID);
VOID CleanUI_Detour(VOID)
{
Benchmark(bmPluginsCleanUI,DebugTry(PluginsCleanUI()));
DebugTry(CleanUI_Trampoline());
}
VOID ReloadUI_Trampoline(BOOL);
VOID ReloadUI_Detour(BOOL UseINI)
{
[color=red]DebugTry(ReloadUI_Trampoline(UseINI));[/color]
Benchmark(bmPluginsReloadUI,DebugTry(PluginsReloadUI()));
}
Code: Select all
.text:005B7964 sub_5B7964 proc near ; CODE XREF: sub_40118A+1EFp
.text:005B7964 ; CAAWnd__CAAWnd+3DBp ...
.text:005B7964
.text:005B7964 ; FUNCTION CHUNK AT .text:005B7933 SIZE 0000001D BYTES
.text:005B7964 ; FUNCTION CHUNK AT .text:005B7957 SIZE 0000000D BYTES
.text:005B7964
.text:005B7964 cmp ecx, dword_7251DC
[color=red].text:005B796A jnz short loc_5B796D[/color]
.text:005B796C retn
.text:005B796D ; ---------------------------------------------------------------------------
.text:005B796D
.text:005B796D loc_5B796D: ; CODE XREF: sub_5B7964+6j
.text:005B796D jmp _report_failure ; Fails here
.text:005B796D sub_5B7964 endp
My lack of debugging skills at this point get me lost.
So if someone else wants to lend a more informed eye at the problem, that'd be cool. If you want to complain about my post instead. That's cool too. Really don't care :)
edit: fixed highlight line in c code. oop


