Mysterious crash
-
My app has started crashing consistently, but I can't figure out what is causing it. It is all in Qt code and not a crash in code that I have written - but of course I could be causing it somehow. It seems to be related to UIAutomationCore, but I have no idea why this code is being called. This happens with qt 6.2.2 and 6.2.3 and QtCreator 6.0.2 and 7.-beta1.
So of course this is a debug build. When I just run the build it does not crash. It crashes when I run it using the debugger - so this is stopping me from being able to use the debugger in QtCreator .
. 0 Id: 2848.36a8 Suspend: 1 Teb: 0000009e`1dea4000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e0f7c00 00007fff`8b51da1d KERNELBASE!RaiseException+0x69 0000009e`1e0f7ce0 00007fff`50cf8c7e ucrtbase!CxxThrowException+0xad 0000009e`1e0f7d50 00007fff`50d46f76 UIAutomationCore+0x8c7e 0000009e`1e0f7e50 00007fff`50d46e48 UIAutomationCore!UiaGetReservedMixedAttributeValue+0x6dc6 0000009e`1e0f9390 00007fff`50d110f6 UIAutomationCore!UiaGetReservedMixedAttributeValue+0x6c98 0000009e`1e0f93f0 00007fff`50d2a5b0 UIAutomationCore+0x210f6 0000009e`1e0f9440 00007fff`50d3cd49 UIAutomationCore!DllCanUnloadNow+0x4140 0000009e`1e0f9580 00007fff`50e77f0c UIAutomationCore!UiaClientsAreListening+0x889 0000009e`1e0f95c0 00007fff`50e785a9 UIAutomationCore!WindowPattern_WaitForInputIdle+0xc956c 0000009e`1e0f9630 00007fff`50d868f6 UIAutomationCore!WindowPattern_WaitForInputIdle+0xc9c09 0000009e`1e0f9690 00007fff`50d12a31 UIAutomationCore!UiaRegisterProviderCallback+0x31656 0000009e`1e0f9740 00007ff7`3e563aff UIAutomationCore!UiaReturnRawElementProvider+0x1b1 0000009e`1e0fa850 00007ff7`3e0393f3 TiledPatternMaker!QWindowsUiaWrapper::returnRawElementProvider(struct HWND__ * hwnd = 0x00000000`0013002a 388+469+985x874 'Qt622dQWindowIcon', unsigned int64 wParam = 0x59dc, int64 lParam = 0n5, struct IRawElementProviderSimple * el = 0x000001d3`234c8798)+0x4f [C:\Qt\6.2.2\Src\qtbase\src\gui\accessible\windows\apisupport\qwindowsuiawrapper.cpp @ 94] 0000009e`1e0fa890 00007ff7`3dfaf52a TiledPatternMaker!QWindowsUiaAccessibility::handleWmGetObject(struct HWND__ * hwnd = 0x00000000`0013002a 388+469+985x874 'Qt622dQWindowIcon', unsigned int64 wParam = 0x59dc, int64 lParam = 0n5, int64 * lResult = 0x0000009e`1e0fb398)+0x113 [C:\Qt\6.2.2\Src\qtbase\src\plugins\platforms\windows\uiautomation\qwindowsuiaaccessibility.cpp @ 83] 0000009e`1e0fa910 00007ff7`3dfa4f3e TiledPatternMaker!QWindowsContext::windowsProc(struct HWND__ * hwnd = 0x00000000`0013002a 388+469+985x874 'Qt622dQWindowIcon', unsigned int message = 0x3d, QtWindows::WindowsEventType et = AccessibleObjectFromWindowRequest (0n16777219), unsigned int64 wParam = 0x59dc, int64 lParam = 0n5, int64 * result = 0x0000009e`1e0fb398, class QWindowsWindow ** platformWindowPtr = 0x0000009e`1e0fb3b8)+0x6ea [C:\Qt\6.2.2\Src\qtbase\src\plugins\platforms\windows\qwindowscontext.cpp @ 1227] 0000009e`1e0fb350 00007fff`8d06e858 TiledPatternMaker!qWindowsWndProc(struct HWND__ * hwnd = 0x00000000`0013002a 388+469+985x874 'Qt622dQWindowIcon', unsigned int message = 0x3d, unsigned int64 wParam = 0x59dc, int64 lParam = 0n5)+0x10e [C:\Qt\6.2.2\Src\qtbase\src\plugins\platforms\windows\qwindowscontext.cpp @ 1679] 0000009e`1e0fb610 00007fff`8d06e3dc USER32!CallWindowProcW+0x3f8 0000009e`1e0fb7a0 00007fff`8d080bc3 USER32!DispatchMessageW+0x39c 0000009e`1e0fb800 00007fff`8d6d0ba4 USER32!SendMessageTimeoutW+0x143 0000009e`1e0fb860 00007fff`8aed1064 ntdll!KiUserCallbackDispatcher+0x24 0000009e`1e0fb8e8 00007fff`8d06a5c3 win32u!NtUserPeekMessage+0x14 0000009e`1e0fb8f0 00007fff`8d06a523 USER32!PeekMessageW+0x1e3 0000009e`1e0fb960 00007ff7`3d23cada USER32!PeekMessageW+0x143 0000009e`1e0fb9d0 00007ff7`3e5611ea TiledPatternMaker!QEventDispatcherWin32::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x23a [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qeventdispatcher_win.cpp @ 491] 0000009e`1e0fec40 00007ff7`3d25809c TiledPatternMaker!QWindowsGuiEventDispatcher::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x4a [C:\Qt\6.2.2\Src\qtbase\src\gui\platform\windows\qwindowsguieventdispatcher.cpp @ 72] 0000009e`1e0fec90 00007ff7`3d258374 TiledPatternMaker!QEventLoop::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x7c [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qeventloop.cpp @ 140] 0000009e`1e0fece0 00007ff7`3d014fd7 TiledPatternMaker!QEventLoop::exec(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x1f4 [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qeventloop.cpp @ 230] 0000009e`1e0fedd0 00007ff7`3e11fb68 TiledPatternMaker!QCoreApplication::exec(void)+0x197 [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qcoreapplication.cpp @ 1378] 0000009e`1e0feeb0 00007ff7`3d61d4fb TiledPatternMaker!QGuiApplication::exec(void)+0x18 [C:\Qt\6.2.2\Src\qtbase\src\gui\kernel\qguiapplication.cpp @ 1861] 0000009e`1e0feee0 00007ff7`3ca8cf50 TiledPatternMaker!QApplication::exec(void)+0xb [C:\Qt\6.2.2\Src\qtbase\src\widgets\kernel\qapplication.cpp @ 2615] 0000009e`1e0fef10 00007ff7`3ebd1189 TiledPatternMaker!main(int argc = 0n1, char ** argv = 0x000001d3`1cee4ba0)+0xf30 [C:\dev\tp\src\main.cpp @ 178] 0000009e`1e0ff6c0 00007ff7`3ebd106e TiledPatternMaker!invoke_main(void)+0x39 [d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 79] 0000009e`1e0ff710 00007ff7`3ebd0f2e TiledPatternMaker!__scrt_common_main_seh(void)+0x12e [d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 288] 0000009e`1e0ff780 00007ff7`3ebd121e TiledPatternMaker!__scrt_common_main(void)+0xe [d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 331] 0000009e`1e0ff7b0 00007fff`8ceb7034 TiledPatternMaker!mainCRTStartup(void * __formal = 0x0000009e`1dea3000)+0xe [d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp @ 17] 0000009e`1e0ff7e0 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e0ff810 00000000`00000000 ntdll!RtlUserThreadStart+0x21 1 Id: 2848.d20 Suspend: 1 Teb: 0000009e`1dea6000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e1ff7a8 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e1ff7b0 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e1ffab0 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e1ffae0 00000000`00000000 ntdll!RtlUserThreadStart+0x21 2 Id: 2848.27cc Suspend: 1 Teb: 0000009e`1dea8000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e2ffa48 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e2ffa50 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e2ffd50 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e2ffd80 00000000`00000000 ntdll!RtlUserThreadStart+0x21 3 Id: 2848.3978 Suspend: 1 Teb: 0000009e`1deaa000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e3ff728 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e3ff730 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e3ffa30 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e3ffa60 00000000`00000000 ntdll!RtlUserThreadStart+0x21 4 Id: 2848.2994 Suspend: 1 Teb: 0000009e`1deac000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e4ffb98 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e4ffba0 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e4ffea0 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e4ffed0 00000000`00000000 ntdll!RtlUserThreadStart+0x21 5 Id: 2848.2a6c Suspend: 1 Teb: 0000009e`1deae000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e5ff6f8 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e5ff700 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e5ffa00 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e5ffa30 00000000`00000000 ntdll!RtlUserThreadStart+0x21 6 Id: 2848.3ac8 Suspend: 1 Teb: 0000009e`1deb2000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e6ff678 00007fff`8b05cb20 ntdll!ZwWaitForMultipleObjects+0x14 0000009e`1e6ff680 00007fff`8c68b1e6 KERNELBASE!WaitForMultipleObjectsEx+0xf0 0000009e`1e6ff970 00007fff`8c68b060 combase!RoGetServerActivatableClasses+0x1476 0000009e`1e6ffc00 00007fff`8c68ae70 combase!RoGetServerActivatableClasses+0x12f0 0000009e`1e6ffc50 00007fff`8c68adf9 combase!RoGetServerActivatableClasses+0x1100 0000009e`1e6ffcb0 00007fff`8ceb7034 combase!RoGetServerActivatableClasses+0x1089 0000009e`1e6ffce0 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e6ffd10 00000000`00000000 ntdll!RtlUserThreadStart+0x21 7 Id: 2848.2e0c Suspend: 1 Teb: 0000009e`1deb4000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e7ffa88 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e7ffa90 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e7ffd90 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e7ffdc0 00000000`00000000 ntdll!RtlUserThreadStart+0x21 8 Id: 2848.3b14 Suspend: 1 Teb: 0000009e`1deb6000 Unfrozen Child-SP RetAddr Call Site 0000009e`1e8ff8c8 00007fff`8d682dc7 ntdll!ZwWaitForWorkViaWorkerFactory+0x14 0000009e`1e8ff8d0 00007fff`8ceb7034 ntdll!TpReleaseCleanupGroupMembers+0x747 0000009e`1e8ffbd0 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e8ffc00 00000000`00000000 ntdll!RtlUserThreadStart+0x21 9 Id: 2848.2120 Suspend: 1 Teb: 0000009e`1deb8000 Unfrozen "QThread" Child-SP RetAddr Call Site 0000009e`1e9fc218 00007fff`8d08078e win32u!NtUserMsgWaitForMultipleObjectsEx+0x14 0000009e`1e9fc220 00007ff7`3d23cf64 USER32!MsgWaitForMultipleObjectsEx+0x9e 0000009e`1e9fc260 00007ff7`3d25809c TiledPatternMaker!QEventDispatcherWin32::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x6c4 [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qeventdispatcher_win.cpp @ 554] 0000009e`1e9ff4d0 00007ff7`3d258374 TiledPatternMaker!QEventLoop::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x7c [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qeventloop.cpp @ 140] 0000009e`1e9ff520 00007ff7`3d1059f8 TiledPatternMaker!QEventLoop::exec(class QFlags<enum QEventLoop::ProcessEventsFlag> flags = class QFlags<enum QEventLoop::ProcessEventsFlag>)+0x1f4 [C:\Qt\6.2.2\Src\qtbase\src\corelib\kernel\qeventloop.cpp @ 230] 0000009e`1e9ff610 00007ff7`3d105904 TiledPatternMaker!QThread::exec(void)+0xe8 [C:\Qt\6.2.2\Src\qtbase\src\corelib\thread\qthread.cpp @ 544] 0000009e`1e9ff6c0 00007ff7`3d1096a7 TiledPatternMaker!QThread::run(void)+0x14 [C:\Qt\6.2.2\Src\qtbase\src\corelib\thread\qthread.cpp @ 614] 0000009e`1e9ff6f0 00007fff`8ceb7034 TiledPatternMaker!QThreadPrivate::start(void * arg = 0x000001d3`1cfbc070)+0x267 [C:\Qt\6.2.2\Src\qtbase\src\corelib\thread\qthread_win.cpp @ 334] 0000009e`1e9ff7f0 00007fff`8d682651 KERNEL32!BaseThreadInitThunk+0x14 0000009e`1e9ff820 00000000`00000000 ntdll!RtlUserThreadStart+0x21 '''
-
No. nothing like that.
-
OK, I have found out what to do:
In QtCreator/Tools/Options/Debugger/CDB turn OFF "Break On" "C++Exception". Now the debugger runs fine.It seems Qt is putting out numerous messages such as:
"Exception at 0x7ff9f9224f69, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued) (first chance) in UIAutomationCore"These messages appear benign when the "Break On" flag is turned off. What do these messages mean and why are they being emitted only when using the debugger? Who knows? Is it a bug or a feature? No idea.
Marking this resolved.