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

Crash in QQmlDelegateModelGroup::insert

    XMLWordPrintable

Details

    • 4c1cee7e1 (dev), 9036e492d (6.6), 80fd26ff2 (tqtc/lts-6.5)

    Description

      We're getting a crash in a complex QML file that has a DelegateModel. I've made and attached a reproducible example. This crash is NOT reproducible in Debug mode.

      It must be some kind of race condition because lowering the repeater count or commenting out items from the ListModel prevents the crash. If you're not getting a crash, try increasing the Repeater count or adding more ListElements.

      Backtrace:

      #0  incrementIndexes (cacheItem=0x0, count=6, deltas=deltas@entry=0x7fffffffa4e0) at /home/qt/work/qt/qtdeclarative/src/qmlmodels/qqmldelegatemodel.cpp:1461
      #1  0x00007ffff7ee045a in QQmlDelegateModelPrivate::itemsInserted (this=this@entry=0x475bf50, inserts=..., translatedInserts=translatedInserts@entry=0x7fffffffa560, 
          movedItems=movedItems@entry=0x0) at /home/qt/work/install/include/QtCore/qarraydatapointer.h:105
      #2  0x00007ffff7ee0ca5 in QQmlDelegateModelPrivate::itemsInserted (this=this@entry=0x475bf50, inserts=...) at /home/qt/work/qt/qtdeclarative/src/qmlmodels/qqmldelegatemodel.cpp:1533
      #3  0x00007ffff7ee1123 in QQmlDelegateModelPrivate::insert (this=0x475bf50, before=..., object=..., groups=2) at /home/qt/work/install/include/QtCore/qarraydataops.h:75
      #4  0x00007ffff7ee15ad in QQmlDelegateModelGroup::insert (this=<optimized out>, args=0x7fffffffaa50)
          at /home/qt/work/qt/qtdeclarative_build/include/QtQml/6.5.3/QtQml/private/../../../../../../qtdeclarative/src/qml/jsruntime/qv4scopedvalue_p.h:215
      #5  0x00007ffff7ee866f in QQmlDelegateModelGroup::qt_metacall (this=0x475bce0, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0x7fffffffaa10)
          at /home/qt/work/qt/qtdeclarative_build/src/qmlmodels/QmlModels_autogen/include/moc_qqmldelegatemodel_p.cpp:1005
      #6  0x00007ffff66e142d in QQmlObjectOrGadget::metacall (this=this@entry=0x7fffffffa9f0, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, argv=argv@entry=0x7fffffffaa10)
          at /home/qt/work/qt/qtdeclarative_build/include/QtQml/6.5.3/QtQml/private/../../../../../../qtdeclarative/src/qml/qml/ftw/qbipointer_p.h:186
      #7  0x00007ffff659e6a6 in operator() (__closure=<optimized out>)
          at /home/qt/work/qt/qtdeclarative_build/include/QtQml/6.5.3/QtQml/private/../../../../../../qtdeclarative/src/qml/qml/qqmlpropertydata_p.h:247
      #8  operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > (call=..., __closure=<synthetic pointer>)
          at /home/qt/work/qt/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2705
      #9  QV4::QObjectMethod::callInternal (this=0x7fffffffa9f0, thisObject=<optimized out>, argv=0x7fffc6b68578, argc=2) at /home/qt/work/qt/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:2716
      #10 0x00007ffff65b7ef5 in QV4::FunctionObject::call (argc=2, argv=0x7fffc6b68578, thisObject=0x7fffc6b68560, this=0x7fffffffaac8)
          at /home/qt/work/qt/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:139
      #11 QV4::Runtime::CallPropertyLookup::call (engine=0x6fad20, base=..., index=<optimized out>, argv=0x7fffc6b68578, argc=2) at /home/qt/work/qt/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1487
      #12 0x00007fffd005bd05 in ?? ()
      #13 0x0000000000000000 in ?? ()
      

      Attachments

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

        Activity

          People

            vhilshei Volker Hilsheimer
            jhuels20 Joshua Huels
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes