Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-36957

Mac OS, iOS: QML crashes on state change after update from 5.2.0 to 5.2.1/5.2.2

    XMLWordPrintable

Details

    • macOS

    Description

      Application sometimes crashes on state change (triggered by 'when') after update from 5.2.0 to newer versions. Unfortunatelly it's difficult to reproduce with some simple part of code, simple examples work fine, only my huge application crashes. When I disable state changes, everything else works fine.

      Backtrace from xcode:

      • thread #1: tid = 0x394fe, 0x38f5a1fc libsystem_kernel.dylib`__pthread_kill + 8, queue = 'com.apple.main-thread, stop reason = signal SIGABRT
        frame #0: 0x38f5a1fc libsystem_kernel.dylib`__pthread_kill + 8
        frame #1: 0x38fc1a52 libsystem_pthread.dylib`pthread_kill + 58
        frame #2: 0x38f0b02c libsystem_c.dylib`abort + 76
        frame #3: 0x008d4d94 Application`qt_message_fatal(=QtFatalMsg, context=0x27cf4c90, message=0x27cf4bd0) + 16 at qlogging.cpp:1012
        frame #4: 0x008d536c Application`QMessageLogger::fatal(this=0x27cf4c90, msg=0x00ced523) const + 180 at qlogging.cpp:384
        frame #5: 0x008d0d86 Application`qt_assert_x(where=0x00ced63a, what=0x00ced5f2, file=0x00ca787f, line=372) + 106 at qglobal.cpp:2104
        frame #6: 0x004095aa Application`QVector<QV4::Function*>::operator[](this=0x16009b74, i=18) + 74 at qvector.h:372
        frame #7: 0x004b64ba Application`QQmlBinding::createBinding(id=1, obj=0x14e23d70, ctxt=0x14df4380, url=0x27cf4ef8, lineNumber=13) + 374 at qqmlbinding.cpp:94
        frame #8: 0x00121eec Application`QQuickPropertyChanges::actions(this=0x2448c090) + 676 at qquickpropertychanges.cpp:487
        frame #9: 0x0011c44a Application`QQuickStatePrivate::generateActionList(this=0x14e23740) const + 386 at qquickstate.cpp:340
        frame #10: 0x0011cafa Application`QQuickState::apply(this=0x14e237b0, trans=0x00000000, revert=0x14e239b0) + 122 at qquickstate.cpp:579
        frame #11: 0x00125046 Application`QQuickStateGroupPrivate::setCurrentStateInternal(this=0x14e23a70, state=0x27cf5514, ignoreTrans=false) + 834 at qquickstategroup.cpp:487
        frame #12: 0x001251c6 Application`QQuickStateGroup::setState(this=0x14e23ad0, state=0x27cf5514) + 62 at qquickstategroup.cpp:293
        frame #13: 0x001254be Application`QQuickStateGroupPrivate::updateAutoState(this=0x14e23a70) + 426 at qquickstategroup.cpp:347
        frame #14: 0x001255be Application`QQuickStateGroup::updateAutoState(this=0x14e23ad0) + 22 at qquickstategroup.cpp:328
        frame #15: 0x0011c126 Application`QQuickState::setWhen(this=0x14e239b0, when=0x14e23860) + 46 at qquickstate.cpp:236
        frame #16: 0x002bb6ac Application`QQuickState::qt_metacall(this=0x14e239b0, _c=WriteProperty, _id=1, _a=0x27cf5724) + 340 at moc_qquickstate_p.cpp:224
        frame #17: 0x00a3d07e Application`QMetaObject::metacall(object=0x14e239b0, cl=WriteProperty, idx=2, argv=0x27cf5724) + 110 at qmetaobject.cpp:308
        frame #18: 0x004b6f82 Application`QQmlBinding::update(this=0x14e23860, flags=QQmlPropertyPrivate::WriteFlags at 0x27cf575c) + 418 at qqmlbinding.cpp:241
        frame #19: 0x004e4142 Application`QQmlBinding::update(this=0x14e23860) + 34 at qqmlbinding_p.h:106
        frame #20: 0x004b745a Application`QQmlBinding::expressionChanged(e=0x14e23870) + 58 at qqmlbinding.cpp:311
        frame #21: 0x004afd6a Application`QQmlJavaScriptExpressionGuard_callback(e=0x04cc19f0, =0x00000000) + 34 at qqmljavascriptexpression.cpp:372
        frame #22: 0x0049881e Application`QQmlNotifier::emitNotify(endpoint=0x04cc19f0, a=0x00000000) + 202 at qqmlnotifier.cpp:81
        frame #23: 0x0040c724 Application`QQmlData::signalEmitted(=0x14e23430, object=0x14e23420, index=30, a=0x00000000) + 740 at qqmlengine.cpp:713
        frame #24: 0x00a7567c Application`QMetaObject::activate(sender=0x14e23420, signalOffset=29, local_signal_index=1, argv=0x00000000) + 336 at qobject.cpp:3466
        frame #25: 0x00a75526 Application`QMetaObject::activate(sender=0x14e23420, m=0x00d07490, local_signal_index=1, argv=0x00000000) + 42 at qobject.cpp:3446
        frame #26: 0x002d5868 Application`QQuickMouseArea::pressedChanged(this=0x14e23420) + 36 at moc_qquickmousearea_p.cpp:437
        frame #27: 0x002313c8 Application`QQuickMouseArea::setPressed(this=0x14e23420, button=LeftButton, p=true) + 468 at qquickmousearea.cpp:1102
        frame #28: 0x00231168 Application`QQuickMouseArea::mousePressEvent(this=0x14e23420, event=0x14e1c770) + 288 at qquickmousearea.cpp:632
        frame #29: 0x001a701a Application`QQuickItemPrivate::deliverMouseEvent(this=0x14e232e0, e=0x14e1c770) + 158 at qquickitem.cpp:4507
        frame #30: 0x001b6dd8 Application`QQuickWindowPrivate::translateTouchToMouse(this=0x14eba6f0, item=0x14e23420, event=0x27cf70fc) + 332 at qquickwindow.cpp:528
        frame #31: 0x001ba7b6 Application`QQuickWindowPrivate::deliverMatchingPointsToItem(this=0x14eba6f0, item=0x14e23420, event=0x27cf70fc, acceptedNewPoints=0x27cf6ab4, matchingNewPoints=0x27cf60d4, matchingPoints=0x27cf60d0) + 522 at qquickwindow.cpp:1825
        frame #32: 0x001ba53e Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14e23420, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 830 at qquickwindow.cpp:1783
        frame #33: 0x001ba318 Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14e23d70, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 280 at qquickwindow.cpp:1733
        frame #34: 0x001ba318 Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14e292d0, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 280 at qquickwindow.cpp:1733
        frame #35: 0x001ba318 Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14d59c90, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 280 at qquickwindow.cpp:1733
        frame #36: 0x001ba318 Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14d597e0, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 280 at qquickwindow.cpp:1733
        frame #37: 0x001ba318 Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14d59690, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 280 at qquickwindow.cpp:1733
        frame #38: 0x001ba318 Application`QQuickWindowPrivate::deliverTouchPoints(this=0x14eba6f0, item=0x14d7c420, event=0x27cf70fc, newPoints=0x27cf6acc, acceptedNewPoints=0x27cf6ab4, updatedPoints=0x27cf6ad4) + 280 at qquickwindow.cpp:1733
        frame #39: 0x001b8f98 Application`QQuickWindowPrivate::deliverTouchEvent(this=0x14eba6f0, event=0x27cf70fc) + 280 at qquickwindow.cpp:1691
        frame #40: 0x001b8d4e Application`QQuickWindow::event(this=0x27d79e84, e=0x27cf70fc) + 146 at qquickwindow.cpp:1248
        frame #41: 0x00a3609e Application`QCoreApplicationPrivate::notify_helper(this=0x14eb22b0, receiver=0x27d79e84, event=0x27cf70fc) + 94 at qcoreapplication.cpp:998
        frame #42: 0x00a36026 Application`QCoreApplication::notify(this=0x27d79e98, receiver=0x27d79e84, event=0x27cf70fc) + 178 at qcoreapplication.cpp:943
        frame #43: 0x0069321e Application`QGuiApplication::notify(this=0x27d79e98, object=0x27d79e84, event=0x27cf70fc) + 158 at qguiapplication.cpp:1354
        frame #44: 0x00a35eba Application`QCoreApplication::notifyInternal(this=0x27d79e98, receiver=0x27d79e84, event=0x27cf70fc) + 250 at qcoreapplication.cpp:881
        frame #45: 0x00698a0e Application`QCoreApplication::sendSpontaneousEvent(receiver=0x27d79e84, event=0x27cf70fc) + 86 at qcoreapplication.h:235
        frame #46: 0x00694e46 Application`QGuiApplicationPrivate::processTouchEvent(e=0x16113b10) + 3614 at qguiapplication.cpp:2212
        frame #47: 0x00693432 Application`QGuiApplicationPrivate::processWindowSystemEvent(e=0x16113b10) + 182 at qguiapplication.cpp:1408
        frame #48: 0x00689682 Application`QWindowSystemInterface::sendWindowSystemEvents(flags=QEventLoop::ProcessEventsFlags at 0x27cf73e8) + 94 at qwindowsysteminterface.cpp:575
        frame #49: 0x00688ef8 Application`QWindowSystemInterface::flushWindowSystemEvents() + 296 at qwindowsysteminterface.cpp:559
        frame #50: 0x000b96b0 Application`-[QUIView sendTouchEventWithTimestamp:](self=0x1614f3f0, _cmd=0x00cf91b7, timeStamp=84594756) + 240 at qioswindow.mm:248
        frame #51: 0x000b997a Application`-[QUIView touchesBegan:withEvent:](self=0x1614f3f0, _cmd=0x30f6edda, touches=0x161152a0, event=0x14e7e330) + 602 at qioswindow.mm:263
        frame #52: 0x309ae354 UIKit`-[UIWindow _sendTouchesForEvent:] + 320
        frame #53: 0x309a9450 UIKit`-[UIWindow sendEvent:] + 832
        frame #54: 0x3097ed78 UIKit`-[UIApplication sendEvent:] + 196
        frame #55: 0x3097d568 UIKit`_UIApplicationHandleEventQueue + 7116
        frame #56: 0x2e1c0f1e CoreFoundation`_CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION_ + 14
        frame #57: 0x2e1c03e6 CoreFoundation`__CFRunLoopDoSources0 + 206
        frame #58: 0x2e1bebd6 CoreFoundation`__CFRunLoopRun + 630
        frame #59: 0x2e129470 CoreFoundation`CFRunLoopRunSpecific + 524
        frame #60: 0x2e129252 CoreFoundation`CFRunLoopRunInMode + 106
        frame #61: 0x32e3d2ea GraphicsServices`GSEventRunModal + 138
        frame #62: 0x309de844 UIKit`UIApplicationMain + 1136
        frame #63: 0x000b7a94 Application`main(argc=1, argv=0x27d7acfc) + 504 at qioseventdispatcher.mm:232
        frame #64: 0x00093228 Application`start + 40

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            shausman Simon Hausmann
            edois Eduard Veleba
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes