Crash when switching to Firewall Tab
MarekKnapek opened this issue · 3 comments
MarekKnapek commented
System Informer version Version: 3.0.7546 (92cd97f)
ExtendedTools.dll!FwTreeNewCompareTimestamp(void * _context=0x0000000000001b60, const void * _elem1=0x000002603cbd0bb0, const void * _elem2=0x0000000000000008) Line 646 C Symbols loaded.
ExtendedTools.dll!qsort(void * base, unsigned __int64 num, unsigned __int64 width=8, int(*)(const void *, const void *) comp=0x00007ffa3f500040) Line 217 C++ Symbols loaded.
ExtendedTools.dll!FwTreeNewCallback(HWND__ * WindowHandle=0x0000000000830996, _PH_TREENEW_MESSAGE Message, void * Parameter1=0x0000006bcef1c940, void * Parameter2, void * Context=0x0000000000000000) Line 1442 C Symbols loaded.
[Inline Frame] SystemInformer.exe!PhTnpGetNodeChildren(_PH_TREENEW_CONTEXT *) Line 3320 C Symbols loaded.
SystemInformer.exe!PhTnpRestructureNodes(_PH_TREENEW_CONTEXT * Context=0x000002603cbda780) Line 3411 C Symbols loaded.
[Inline Frame] SystemInformer.exe!PhTnpSetRedraw(_PH_TREENEW_CONTEXT *) Line 2426 C Symbols loaded.
SystemInformer.exe!PhTnpOnUserMessage(HWND__ * hwnd=0x0000000000830996, _PH_TREENEW_CONTEXT * Context=0x000002603cbda780, unsigned long Message, unsigned __int64 WParam=1, unsigned __int64 LParam=0) Line 1951 C Symbols loaded.
SystemInformer.exe!PhTnpWndProc(HWND__ * hwnd=0x0000000000830996, unsigned int uMsg=1055, unsigned __int64 wParam=1, __int64 lParam=0) Line 300 C Symbols loaded.
user32.dll!UserCallWinProcCheckWow() Unknown Non-user code. Symbols loaded without source information.
user32.dll!SendMessageWorker() Unknown Non-user code. Symbols loaded without source information.
user32.dll!SendMessageW() Unknown Non-user code. Symbols loaded without source information.
[Inline Frame] SystemInformer.exe!PhMwpOnUserMessage(HWND__ *) Line 2411 C Symbols loaded.
SystemInformer.exe!PhMwpWndProc(HWND__ * hWnd=0x00000000001802b4, unsigned int uMsg, unsigned __int64 wParam=1, __int64 lParam=140712780767392) Line 252 C Symbols loaded.
user32.dll!UserCallWinProcCheckWow() Unknown Non-user code. Symbols loaded without source information.
user32.dll!CallWindowProcW() Unknown Non-user code. Symbols loaded without source information.
ToolStatus.dll!MainWndSubclassProc(HWND__ * hWnd=0x00000000001802b4, unsigned int uMsg=32913, unsigned __int64 wParam=1, __int64 lParam=140712780767392) Line 1637 C Symbols loaded.
user32.dll!UserCallWinProcCheckWow() Unknown Non-user code. Symbols loaded without source information.
user32.dll!DispatchMessageWorker() Unknown Non-user code. Symbols loaded without source information.
user32.dll!DialogBox2(struct HWND__ *,struct HWND__ *,int,int) Unknown Non-user code. Symbols loaded without source information.
user32.dll!InternalDialogBox(void *,struct DLGTEMPLATE *,struct HWND__ *,__int64 (*)(struct HWND__ *,unsigned int,unsigned __int64,__int64),__int64,unsigned int) Unknown Non-user code. Symbols loaded without source information.
user32.dll!DialogBoxIndirectParamAorW() Unknown Non-user code. Symbols loaded without source information.
user32.dll!DialogBoxIndirectParamW() Unknown Non-user code. Symbols loaded without source information.
comctl32.dll!SHFusionDialogBoxIndirectParam() Unknown Non-user code. Symbols loaded without source information.
comctl32.dll!CTaskDialog::Show() Unknown Non-user code. Symbols loaded without source information.
SystemInformer.exe!PhpUnhandledExceptionCallback(_EXCEPTION_POINTERS * ExceptionInfo=0x0000006bcef1d810) Line 757 C Symbols loaded.
ntdll.dll!RtlUserThreadStart$filt$0() Unknown Non-user code. Symbols loaded without source information.
ntdll.dll!__C_specific_handler() Unknown Non-user code. Symbols loaded without source information.
ntdll.dll!RtlpExecuteHandlerForException() Unknown Non-user code. Symbols loaded without source information.
ntdll.dll!RtlDispatchException() Unknown Non-user code. Symbols loaded without source information.
ntdll.dll!KiUserExceptionDispatch() Unknown Non-user code. Symbols loaded without source information.
[Inline Frame] ExtendedTools.dll!FwUpdateNodeTimeStamp(_FW_EVENT_ITEM *) Line 441 C Symbols loaded.
ExtendedTools.dll!FwTreeNewCompareTimestamp(void * _context=0x0000000000001a78, const void * _elem1, const void * _elem2) Line 646 C Symbols loaded.
ExtendedTools.dll!qsort(void * base, unsigned __int64 num, unsigned __int64 width=8, int(*)(const void *, const void *) comp=0x00007ffa3f500040) Line 217 C++ Symbols loaded.
ExtendedTools.dll!FwTreeNewCallback(HWND__ * WindowHandle=0x0000000000830996, _PH_TREENEW_MESSAGE Message, void * Parameter1=0x0000006bcef1ec80, void * Parameter2, void * Context=0x0000000000000000) Line 1442 C Symbols loaded.
[Inline Frame] SystemInformer.exe!PhTnpGetNodeChildren(_PH_TREENEW_CONTEXT *) Line 3320 C Symbols loaded.
> SystemInformer.exe!PhTnpRestructureNodes(_PH_TREENEW_CONTEXT * Context=0x000002603cbda780) Line 3411 C Symbols loaded.
[Inline Frame] SystemInformer.exe!PhTnpSetRedraw(_PH_TREENEW_CONTEXT *) Line 2426 C Symbols loaded.
SystemInformer.exe!PhTnpOnUserMessage(HWND__ * hwnd=0x0000000000830996, _PH_TREENEW_CONTEXT * Context=0x000002603cbda780, unsigned long Message, unsigned __int64 WParam=1, unsigned __int64 LParam=0) Line 1951 C Symbols loaded.
SystemInformer.exe!PhTnpWndProc(HWND__ * hwnd=0x0000000000830996, unsigned int uMsg=1055, unsigned __int64 wParam=1, __int64 lParam=0) Line 300 C Symbols loaded.
user32.dll!UserCallWinProcCheckWow() Unknown Non-user code. Symbols loaded without source information.
user32.dll!SendMessageWorker() Unknown Non-user code. Symbols loaded without source information.
user32.dll!SendMessageW() Unknown Non-user code. Symbols loaded without source information.
[Inline Frame] SystemInformer.exe!PhMwpOnUserMessage(HWND__ *) Line 2411 C Symbols loaded.
SystemInformer.exe!PhMwpWndProc(HWND__ * hWnd=0x00000000001802b4, unsigned int uMsg, unsigned __int64 wParam=0, __int64 lParam=140712780767392) Line 252 C Symbols loaded.
user32.dll!UserCallWinProcCheckWow() Unknown Non-user code. Symbols loaded without source information.
user32.dll!CallWindowProcW() Unknown Non-user code. Symbols loaded without source information.
ToolStatus.dll!MainWndSubclassProc(HWND__ * hWnd=0x00000000001802b4, unsigned int uMsg=32913, unsigned __int64 wParam=0, __int64 lParam=140712780767392) Line 1637 C Symbols loaded.
user32.dll!UserCallWinProcCheckWow() Unknown Non-user code. Symbols loaded without source information.
user32.dll!DispatchMessageWorker() Unknown Non-user code. Symbols loaded without source information.
SystemInformer.exe!PhMainMessageLoop() Line 346 C Symbols loaded.
SystemInformer.exe!wWinMain(HINSTANCE__ * Instance, HINSTANCE__ * PrevInstance=0x0000000000000000, wchar_t * CmdLine=0x0000000000000000, int CmdShow=10) Line 272 C Symbols loaded.
[Inline Frame] SystemInformer.exe!invoke_main() Line 118 C++ Non-user code. Symbols loaded.
SystemInformer.exe!__scrt_common_main_seh() Line 288 C++ Non-user code. Symbols loaded.
kernel32.dll!BaseThreadInitThunk() Unknown Non-user code. Symbols loaded without source information.
ntdll.dll!RtlUserThreadStart() Unknown Non-user code. Symbols loaded without source information.
jxy-s commented
Looks like the firewall tab is the culprit here.
e9 00000066`092ca9c0 00007ff8`c8bef663 ntdll!KiUserExceptionDispatch+0x2e
ea 00000066`092cb148 00007ff8`c8c320e8 ExtendedTools!FwTreeNewCompareAction+0x3 [plugins\ExtendedTools\fwtab.c @ 520]
eb 00000066`092cb150 00007ff8`c8bf05df ExtendedTools!qsort+0x178 [minkernel\crts\ucrt\src\appcrt\stdlib\qsort.cpp @ 217]
ec 00000066`092cb5c0 00007ff6`44afeb26 ExtendedTools!FwTreeNewCallback+0x9f [plugins\ExtendedTools\fwtab.c @ 1442]
ed (Inline Function) --------`-------- SystemInformer!PhTnpGetNodeChildren+0x34 [phlib\treenew.c @ 3320]
ee 00000066`092cb680 00007ff6`44afca5a SystemInformer!PhTnpRestructureNodes+0x46 [phlib\treenew.c @ 3411]
ef (Inline Function) --------`-------- SystemInformer!PhTnpSetRedraw+0x2b [phlib\treenew.c @ 2426]
f0 00000066`092cb6e0 00007ff6`44afa825 SystemInformer!PhTnpOnUserMessage+0x57a [phlib\treenew.c @ 1951]
f1 00000066`092cb770 00007ff8`f1ef8241 SystemInformer!PhTnpWndProc+0xcc5 [phlib\treenew.c @ 300]
f2 00000066`092cb8a0 00007ff8`f1ef7a8b USER32!UserCallWinProcCheckWow+0x2d1
0:020> dx Debugger.Sessions[0].Processes[22808].Threads[22148].Stack.Frames[234].SwitchTo();dv /t /v
Debugger.Sessions[0].Processes[22808].Threads[22148].Stack.Frames[234].SwitchTo()
@rcx void * _context = 0x00000000`00000000
@rdx void * _elem1 = 0x00000000`00000000
@r8 void * _elem2 = 0x00000000`00000000
<unavailable> int sortResult = <value unavailable>
@r9 struct _FW_EVENT_ITEM * node1 = 0x00000000`00000000
<unavailable> struct _FW_EVENT_ITEM * node2 = <value unavailable>
Introduced with this commit: e40da6c
Changed from qsort_s
to qsort
but forgot to update BEGIN_SORT_FUNCTION
.