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

Crash in QmlCacheGeneratedCode

    XMLWordPrintable

Details

    • 1b9d4c66f (dev), a28057591 (6.9), 00f3da62f (6.8), c9640966e (tqtc/lts-6.5)

    Description

      Consider the following code

       

      import QtCore
      import QtQuick
      import QtQuick.Controls
      import Qt.labs.platform
      
      ApplicationWindow {
          id: mainWindow
          visible: true
      
          FileDialog {
              id: fileDialog
              folder: StandardPaths.writableLocation(StandardPaths.MusicLocation)
          }
      } 

      Turning this into an app it crashes with the following backtrace

       

       

      #0  QQmlPrivate::callQObjectMethod (engine=0x44da70, lookup=0x828528, thisObject=<optimized out>, args=<optimized out>, argc=1)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqml.cpp:1895
      
      #1  0x0000000000405cde in QmlCacheGeneratedCode::_qt_qml_untitled9_Main_qml::aotBuiltFunctions::{lambda(QQmlPrivate::AOTCompiledContext const*, void**)#1}::operator()(Q
      QmlPrivate::AOTCompiledContext const*, void**) const::{lambda()#2}::operator()() const ()
      
      #2  0x0000000000405fed in QmlCacheGeneratedCode::_qt_qml_untitled9_Main_qml::aotBuiltFunctions::{lambda(QQmlPrivate::AOTCompiledContext const*, void**)#1}::operator()(Q
      QmlPrivate::AOTCompiledContext const*, void**) const ()
      
      #3  0x00000000004060cd in QmlCacheGeneratedCode::_qt_qml_untitled9_Main_qml::aotBuiltFunctions::{lambda(QQmlPrivate::AOTCompiledContext const*, void**)#1}::_FUN(QQmlPri
      vate::AOTCompiledContext const*, void**) ()
      
      #4  0x00007ffff70ee53f in operator() (argc=<optimized out>, __closure=0x7fffffffc770, argv=0x7fffffffca68)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:446
      
      #5  QV4::coerceAndCall<AOTCompiledMetaMethod, QV4::Moth::VME::exec(QV4::MetaTypesStackFrame*, QV4::ExecutionEngine*)::<lambda(void**, int)> >(QV4::ExecutionEngine *, co
      nst AOTCompiledMetaMethod *, void **, const QMetaType *, int, struct {...})
      
          (engine=engine@entry=0x44da70, typedFunction=typedFunction@entry=0x7fffffffc7a8, argv=<optimized out>, types=<optimized out>, argc=<optimized out>, call=...)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4jscall_p.h:559
      
      #6  0x00007ffff70f55a8 in QV4::Moth::VME::exec (frame=frame@entry=0x7fffffffc860, engine=engine@entry=0x44da70)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4stackframe_p.h:151
      
      #7  0x00007ffff7021ba6 in QV4::Function::call
      
          (this=0x7f81d0, thisObject=<optimized out>, a=a@entry=0x7fffffffca68, types=types@entry=0x7fffffffca70, argc=<optimized out>, context=<optimized out>)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/jsruntime/qv4function.cpp:36
      
      #8  0x00007ffff71a9307 in QQmlJavaScriptExpression::evaluate (this=this@entry=0x72d470, a=a@entry=0x7fffffffca68, types=types@entry=0x7fffffffca70, argc=argc@entry=0)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmljavascriptexpression_p.h:248
      
      #9  0x00007ffff7130bde in QQmlBinding::evaluate (this=0x72d470, result=0x7fffffffca30, type=...)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlbinding_p.h:86
      
      #10 QQmlBinding::doUpdate (this=0x72d470, watcher=..., flags=..., scope=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlbinding.cpp:702
      
      #11 0x00007ffff7134768 in QQmlBinding::update (this=0x72d470, flags=...) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlbinding.cpp:165
      
      #12 0x00007ffff71dc836 in QQmlObjectCreator::finalize (this=0x83df20, interrupt=...) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1535
      
      #13 0x00007ffff7151a79 in QQmlComponentPrivate::complete (enginePriv=0x5ac370, state=state@entry=0x7ccfb8)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/ftw/qbipointer_p.h:133
      
      #14 0x00007ffff71586db in QQmlComponentPrivate::completeCreate (this=0x7ccf00) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:1316
      
      #15 0x00007ffff7159254 in QQmlComponent::completeCreate (this=0x7f6610) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:1282
      
      #16 QQmlComponentPrivate::createWithProperties
      
          (this=0x7ccf00, parent=parent@entry=0x0, properties=..., context=<optimized out>, behavior=behavior@entry=QQmlComponentPrivate::CreateDefault, createFromQml=createF
      romQml@entry=false) at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:978
      
      #17 0x00007ffff7159590 in QQmlComponent::create (this=<optimized out>, context=<optimized out>)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:923
      
      #18 0x00007ffff712eda3 in QQmlApplicationEnginePrivate::finishLoad (this=0x5ac370, c=0x7f6610)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:158
      
      #19 0x00007ffff712efd4 in QQmlApplicationEnginePrivate::ensureLoadingFinishes (this=<optimized out>, c=<optimized out>)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:185
      
      #20 0x00007ffff712f6bf in QQmlApplicationEnginePrivate::startLoad (this=0x5ac370, uri=..., typeName=...)
      
          at /home/nico/workspace/qt6/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:144
      
      #21 0x000000000040249c in main ()
      

       

      It doesn't crash when running with QV4_FORCE_INTERPRETER=1

      Tested with Qt from 6.9 branch (qtbase 2db67cb4b64884039f5c194ec0d41745302e3215, qtdeclarative 06dfe788dd6f6b64c129450e23819859aba4c88d)

      Attachments

        For Gerrit Dashboard: QTBUG-132921
        # Subject Branch Project Status CR V

        Activity

          People

            olivier.decanniere Olivier De Cannière
            nicolasfella Nicolas Fella
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes