Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.13, 5.14, 5.15
-
-
266cd7638d887b31d56964a0f13fe208821703b1 (qt/qtdeclarative/dev) d08bce267f2d7cba474a05d73869bc99fbd8d971 (qt/qtdeclarative/5.15) 691fdba5ec537e8ebcd4f98a18fabb2731668ef8 (qt/qtdeclarative/5.12)
Description
Running an animation in a Popup causes a crash if popup closed while animation is running.
This behavior started with QT 5.13, with 5.12 it works fine.
How to reproduce :
1. Start the attached app QTBUG86402.zip (With QT > 5.13)
2. Click on “showPopup” Button
3. Click into Blue Rectangle to start animation
4. Close Popup before animation is over (Button “Kill me!”)
5. Wait approximately 10 secs , and watch crash
1 QVector<QSGShaderEffectNode::VariableData>::begin qvector.h 211 0x7fff250330ae 2 QQuickGenericShaderEffect::handleItemChange qquickgenericshadereffect.cpp 345 0x7fff25336d99 3 QQuickShaderEffect::itemChange qquickshadereffect.cpp 872 0x7fff25334c35 4 QQuickItemPrivate::itemChange qquickitem.cpp 6284 0x7fff251233d3 5 QQuickItemPrivate::derefWindow qquickitem.cpp 3041 0x7fff2511f240 6 QQuickItemPrivate::derefWindow qquickitem.cpp 3034 0x7fff2511f1aa 7 QQuickOpenGLShaderEffectCommon::disconnectPropertySignals qquickopenglshadereffect.cpp 242 0x7fff2533e0fb 8 QQuickOpenGLShaderEffect::~QQuickOpenGLShaderEffect qquickopenglshadereffect.cpp 660 0x7fff25340f69 9 QQuickOpenGLShaderEffect::`vector deleting destructor' Qt5Quickd 0x7fff25346549 10 QQuickShaderEffect::~QQuickShaderEffect qquickshadereffect.cpp 535 0x7fff253341a4 11 QQmlPrivate::QQmlElement<QQuickShaderEffect>::~QQmlElement<QQuickShaderEffect> qqmlprivate.h 144 0x7fff2545aa9d 12 QQmlPrivate::QQmlElement<QQuickShaderEffect>::`scalar deleting destructor' Qt5Quickd 0x7fff2545f3d7 13 QQuickItemLayer::deactivateEffect qquickitem.cpp 8464 0x7fff2511abce 14 QQuickItemLayer::deactivate qquickitem.cpp 8427 0x7fff2511a6e3 15 QQuickItemLayer::setEnabled qquickitem.cpp 8365 0x7fff2511919e 16 QQuickItemLayer::qt_static_metacall moc_qquickitem_p.cpp 302 0x7fff25118ce4 17 QQuickItemLayer::qt_metacall moc_qquickitem_p.cpp 368 0x7fff25118034 18 QMetaObject::metacall qmetaobject.cpp 317 0x7fff29e3a728 19 QQmlPropertyData::writeProperty qqmlpropertydata_p.h 380 0x7fff28938406 20 QQmlPropertyPrivate::write qqmlproperty.cpp 1246 0x7fff2893178f 21 QV4::QObjectWrapper::setProperty qv4qobjectwrapper.cpp 565 0x7fff28740b89 22 QV4::QObjectWrapper::setQmlProperty qv4qobjectwrapper.cpp 436 0x7fff2873e855 23 QV4::QObjectWrapper::virtualPut qv4qobjectwrapper.cpp 722 0x7fff287412b1 24 QV4::Object::put qv4object_p.h 324 0x7fff2851fd15 25 QV4::Object::virtualResolveLookupSetter qv4object.cpp 804 0x7fff286e609c 26 QV4::QObjectWrapper::virtualResolveLookupSetter qv4qobjectwrapper.cpp 902 0x7fff2873f5c1 27 QV4::Object::resolveLookupSetter qv4object_p.h 381 0x7fff285223a6 28 QV4::Lookup::resolveSetter qv4lookup.cpp 445 0x7fff28674161 29 QV4::Lookup::setterGeneric qv4lookup.cpp 451 0x7fff286741db 30 QV4::Moth::VME::interpret qv4vme_moth.cpp 653 0x7fff2878d7cc 31 QV4::Moth::VME::exec qv4vme_moth.cpp 463 0x7fff2878b575 32 QV4::Function::call qv4function.cpp 69 0x7fff286b44d4 33 QQmlJavaScriptExpression::evaluate qqmljavascriptexpression.cpp 212 0x7fff289e3cff 34 QQmlJavaScriptExpression::evaluate qqmljavascriptexpression.cpp 173 0x7fff289e39c9 35 QQmlExpressionPrivate::v4value qqmlexpression.cpp 262 0x7fff2892cb04 36 QQmlExpressionPrivate::value qqmlexpression.cpp 281 0x7fff2892c927 37 QQmlExpression::evaluate qqmlexpression.cpp 303 0x7fff2892c3b6 38 QQuickScriptActionPrivate::execute qquickanimation.cpp 1029 0x7fff24eba379 39 QAnimationActionProxy<QQuickScriptActionPrivate,{QQuickScriptActionPrivate::execute,0},{QQuickScriptActionPrivate::debugAction,0}>::doAction qquickanimation_p_p.h 91 0x7fff24ec7eb2 40 QActionAnimation::updateState qquickanimation.cpp 904 0x7fff24eb9696 41 QAbstractAnimationJob::setState qabstractanimationjob.cpp 350 0x7fff28a9e161 42 QAbstractAnimationJob::start qabstractanimationjob.cpp 514 0x7fff28a9d916 43 QSequentialAnimationGroupJob::activateCurrentAnimation qsequentialanimationgroupjob.cpp 325 0x7fff28aa79c4 44 QSequentialAnimationGroupJob::setCurrentAnimation qsequentialanimationgroupjob.cpp 309 0x7fff28aa78ed 45 QSequentialAnimationGroupJob::updateCurrentTime qsequentialanimationgroupjob.cpp 235 0x7fff28aa6f5c 46 QAbstractAnimationJob::setCurrentTime qabstractanimationjob.cpp 482 0x7fff28a9d761 47 QQmlAnimationTimer::updateAnimationsTime qabstractanimationjob.cpp 110 0x7fff28aa0b4a 48 QUnifiedTimer::updateAnimationTimers qabstractanimation.cpp 325 0x7fff299b8fef 49 QAnimationDriver::advanceAnimation qabstractanimation.cpp 824 0x7fff299b61a7 50 QSGAnimationDriver::advance qsgcontext.cpp 219 0x7fff2504ed5b 51 QSGThreadedRenderLoop::polishAndSync qsgthreadedrenderloop.cpp 1617 0x7fff250ac8e1 52 QSGThreadedRenderLoop::handleUpdateRequest qsgthreadedrenderloop.cpp 1429 0x7fff250ab269 53 QQuickWindow::event qquickwindow.cpp 1758 0x7fff2515dd0c 54 QCoreApplicationPrivate::notify_helper qcoreapplication.cpp 1222 0x7fff29e2c331 55 doNotify qcoreapplication.cpp 1151 0x7fff29e2ddcf 56 QCoreApplication::notify qcoreapplication.cpp 1138 0x7fff29e29731 57 QGuiApplication::notify qguiapplication.cpp 1880 0x7fff274f63f4 58 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1061 0x7fff29e2ae9f 59 QCoreApplication::sendEvent qcoreapplication.cpp 1457 0x7fff29e28f82 60 QPlatformWindow::deliverUpdateRequest qplatformwindow.cpp 790 0x7fff274ec370 61 QPlatformWindow::windowEvent qplatformwindow.cpp 477 0x7fff274ebce8 62 QWindowsWindow::windowEvent qwindowswindow.cpp 2389 0x7fff290d9bdc 63 QGuiApplicationPrivate::sendQWindowEventToQPlatformWindow qguiapplication.cpp 1929 0x7fff274ffa4d 64 QGuiApplication::notify qguiapplication.cpp 1875 0x7fff274f63d4 65 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1061 0x7fff29e2ae9f 66 QCoreApplication::sendEvent qcoreapplication.cpp 1457 0x7fff29e28f82 67 QEventDispatcherWin32Private::sendTimerEvent qeventdispatcher_win.cpp 438 0x7fff29f0132b 68 QEventDispatcherWin32::event qeventdispatcher_win.cpp 1061 0x7fff29f0083f 69 QCoreApplicationPrivate::notify_helper qcoreapplication.cpp 1222 0x7fff29e2c331 70 doNotify qcoreapplication.cpp 1151 0x7fff29e2ddcf 71 QCoreApplication::notify qcoreapplication.cpp 1138 0x7fff29e29731 72 QGuiApplication::notify qguiapplication.cpp 1880 0x7fff274f63f4 73 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1061 0x7fff29e2ae9f 74 QCoreApplication::sendEvent qcoreapplication.cpp 1457 0x7fff29e28f82 75 QCoreApplicationPrivate::sendPostedEvents qcoreapplication.cpp 1815 0x7fff29e2cda3 76 QEventDispatcherWin32::sendPostedEvents qeventdispatcher_win.cpp 1076 0x7fff29f00982 77 QWindowsGuiEventDispatcher::sendPostedEvents qwindowsguieventdispatcher.cpp 81 0x7fff291ca2e4 78 QEventDispatcherWin32::processEvents qeventdispatcher_win.cpp 527 0x7fff29efe9b2 79 QWindowsGuiEventDispatcher::processEvents qwindowsguieventdispatcher.cpp 73 0x7fff291ca2a4 80 QEventLoop::processEvents qeventloop.cpp 140 0x7fff29e257db 81 QEventLoop::exec qeventloop.cpp 232 0x7fff29e25a44 82 QCoreApplication::exec qcoreapplication.cpp 1369 0x7fff29e28d09 83 QGuiApplication::exec qguiapplication.cpp 1868 0x7fff274f6388 84 main main.cpp 21 0x7ff6bf392875 85 WinMain qtmain_win.cpp 97 0x7ff6bf395dd5 86 invoke_main exe_common.inl 107 0x7ff6bf3940e2 87 __scrt_common_main_seh exe_common.inl 288 0x7ff6bf393fce 88 __scrt_common_main exe_common.inl 331 0x7ff6bf393e8e 89 WinMainCRTStartup exe_winmain.cpp 17 0x7ff6bf394179 90 BaseThreadInitThunk KERNEL32 0x7fff932d4034 91 RtlUserThreadStart ntdll 0x7fff95ca3691