-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.9
-
None
-
Fedora 41, KDE Plasma
-
1b9d4c66f (dev), a28057591 (6.9), 00f3da62f (6.8), c9640966e (tqtc/lts-6.5)
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)