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

[REG: 5.10.1->5.11.0] Component.createObject and incubateObject crash if binding is passed to the object

    XMLWordPrintable

Details

    Description

      To reproduce:

      import QtQuick 2.0
      import QtQuick.Window 2.2
      
      Window {
          id: win
          visible: true
          width: 800
          height: 600
      
          Component {
              id: cmp
              Rectangle {
                  color:"red"
                  height: win.height
              }
          }
          Component.onCompleted: {
              cmp.incubateObject(contentItem, {width: Qt.binding(function(){ return win.width })})
          }
      }
      

      Crashes with following stack trace (v4Function is a null pointer):

      1  QV4::CppStackFrame::lineNumber               qv4engine.cpp             786  0x7ffff7372fc4 
      2  QV4::QQmlBindingFunction::currentLocation    qqmlbuiltinfunctions.cpp  1358 0x7ffff7567d8a 
      3  QV4::QObjectWrapper::setProperty             qv4qobjectwrapper.cpp     466  0x7ffff744c3cb 
      4  QV4::QObjectWrapper::setQmlProperty          qv4qobjectwrapper.cpp     429  0x7ffff744d83e 
      5  QV4::QObjectWrapper::put                     qv4qobjectwrapper.cpp     706  0x7ffff744d922 
      6  QV4::Object::put                             qv4object_p.h             370  0x7ffff74ae37c 
      7  QQmlComponentPrivate::setInitialProperties   qqmlcomponent.cpp         1255 0x7ffff74ae37c 
      8  QV4::QmlIncubatorObject::setInitialState     qqmlcomponent.cpp         1552 0x7ffff74af3d5 
      9  QQmlComponentIncubator::setInitialState      qqmlcomponent.cpp         1152 0x7ffff74b12a2 
      10 QQmlIncubatorPrivate::incubate               qqmlincubator.cpp         318  0x7ffff74b29a7 
      11 QQmlIncubationController::incubateFor        qqmlincubator.cpp         389  0x7ffff74b339e 
      12 QQuickWindowIncubationController::incubate   qquickwindow.cpp          160  0x7fffc794f580 
      13 QQuickWindowIncubationController::timerEvent qquickwindow.cpp          143  0x7fffc794f580 
      14 QObject::event                               qobject.cpp               1232 0x7ffff6f52ba3 
      15 QApplicationPrivate::notify_helper           qapplication.cpp          3713 0x7ffff783e2d8 
      16 QApplication::notify                         qapplication.cpp          3085 0x7ffff7845cc2 
      17 QCoreApplication::notifyInternal2            qcoreapplication.cpp      1048 0x7ffff6f214cc 
      18 QCoreApplication::sendEvent                  qcoreapplication.h        234  0x7ffff6f7d494 
      19 QTimerInfoList::activateTimers               qtimerinfo_unix.cpp       643  0x7ffff6f7d494 
      20 timerSourceDispatch                          qeventdispatcher_glib.cpp 182  0x7ffff6f7dcc9 
      21 g_main_context_dispatch                                                     0x7ffff479e197 
      22 ??                                                                          0x7ffff479e3f0 
      23 g_main_context_iteration                                                    0x7ffff479e49c 
      24 QEventDispatcherGlib::processEvents          qeventdispatcher_glib.cpp 423  0x7ffff6f7e0b5 
      25 QPAEventDispatcherGlib::processEvents        qeventdispatcher_glib.cpp 69   0x7ffff7efae1b 
      26 QEventLoop::processEvents                    qeventloop.cpp            136  0x7ffff6f1f403 
      27 QEventLoop::exec                             qeventloop.cpp            214  0x7ffff6f1f87c 
      28 QCoreApplication::exec                       qcoreapplication.cpp      1336 0x7ffff6f294b2 
      29 QGuiApplication::exec                        qguiapplication.cpp       1750 0x7ffff5e92bba 
      30 QApplication::exec                           qapplication.cpp          2898 0x7ffff783e1b3 
      31 main                                                                        0x400d56       
      

      Attachments

        1. qtbug68444.tar.gz
          0.8 kB
          Joni Poikelin

        Issue Links

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

          Activity

            People

              shausman Simon Hausmann
              poikelin Joni Poikelin
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes