Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.9.2, 5.11.1
-
None
-
Windows 10, Qt 5.9.2
-
10095542d16fc9f5b2c585abf72fe00be9debff3 (qt/qtdeclarative/5.11) 2ededacdde179357eb686901202789bbee35771a (qt/qtdeclarative/5.9)
Description
After upgrading from Qt 5.7 to Qt 5.9.2 I started to get the crashes (100% reproducible) when using XAnimator during the startup of my two-window based QML application.
From the call-stack (shown below) and debugging it is visible that this fragment is problematic:
m_controller->window()
https://github.com/qt/qtdeclarative/blob/5.9/src/quick/util/qquickanimatorjob.cpp#L220
Indeed, m_controller is a null pointer.
Comparing to the Qt 5.7 it's visible that there were changes in that region of code, so this may be a kind of regression.
Full call-stack is:
1 QQuickAnimatorController::window qquickanimatorcontroller_p.h 93 0x7ffb88e0696a 2 QQuickAnimatorProxyJob::sceneGraphInitialized qquickanimatorjob.cpp 216 0x7ffb88dfcd7f 3 QtPrivate::FunctorCall<QtPrivate::IndexesList<>,QtPrivate::List<>,void,void (__cdecl QQuickAnimatorProxyJob:: *)(void) __ptr64>::call qobjectdefs_impl.h 136 0x7ffb88e03711 4 QtPrivate::FunctionPointer<void (__cdecl QQuickAnimatorProxyJob:: *)(void) __ptr64>::call<QtPrivate::List<>,void> qobjectdefs_impl.h 170 0x7ffb88dffe3d 5 QtPrivate::QSlotObject<void (__cdecl QQuickAnimatorProxyJob:: *)(void) __ptr64,QtPrivate::List<>,void>::impl qobject_impl.h 121 0x7ffb88e04ff6 6 QtPrivate::QSlotObjectBase::call qobject_impl.h 101 0x6da09718 7 QMetaCallEvent::placeMetaCall qobject.cpp 501 0x6da01696 8 QObject::event qobject.cpp 1246 0x6d9fa05f 9 QCoreApplicationPrivate::notify_helper qcoreapplication.cpp 1153 0x6d9a2c7e 10 doNotify qcoreapplication.cpp 1093 0x6d9a4408 11 QCoreApplication::notify qcoreapplication.cpp 1080 0x6d9a0501 12 QGuiApplication::notify qguiapplication.cpp 1689 0x7ffb84ea99a9 13 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1018 0x6d9a1dc6 14 QCoreApplication::sendEvent qcoreapplication.h 233 0x6d9ace32 15 QCoreApplicationPrivate::sendPostedEvents qcoreapplication.cpp 1678 0x6d9a3682 16 QEventDispatcherWin32::sendPostedEvents qeventdispatcher_win.cpp 1064 0x6da5fe1a 17 qt_plugin_query_metadata qwindowsd 0x7ffb96310754 18 qt_internal_proc qeventdispatcher_win.cpp 237 0x6da5daf7 19 CallWindowProcW USER32 0x7ffbd8e8b85d 20 DispatchMessageW USER32 0x7ffbd8e8b1ef 21 QEventDispatcherWin32::processEvents qeventdispatcher_win.cpp 628 0x6da5e50b 22 qt_plugin_query_metadata qwindowsd 0x7ffb96310714 23 QEventLoop::processEvents qeventloop.cpp 135 0x6d99c198 24 QEventLoop::exec qeventloop.cpp 212 0x6d99c3de 25 QCoreApplication::exec qcoreapplication.cpp 1291 0x6d99fa6f 26 QGuiApplication::exec qguiapplication.cpp 1680 0x7ffb84ea9948 27 main main.cpp 174 0x7ff6bab76a60 28 invoke_main exe_common.inl 65 0x7ff6babb63b4 29 __scrt_common_main_seh exe_common.inl 253 0x7ff6babb6277 30 __scrt_common_main exe_common.inl 296 0x7ff6babb613e 31 mainCRTStartup exe_main.cpp 17 0x7ff6babb63d9 32 BaseThreadInitThunk KERNEL32 0x7ffbdb1f1fe4 33 RtlUserThreadStart ntdll 0x7ffbdb71ef91
Unfortunately, I am unable to create a self-contained code example.