Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.7
-
None
-
4c4605be7 (dev), 3ed063d2f (6.7)
Description
qmlls crashes when opening a QML document in Kate. I've seen it with many different files, so I can't really pinpoint it to anything in particular right now.
qtdeclarative commit bad3079cc2d32070bd0491428e8a4244b30a11ae
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007fc4d04d58a3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78 #2 0x00007fc4d04838ee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007fc4d046b8ff in __GI_abort () at abort.c:79 #4 0x0000555bfff581a9 in std::__throw_bad_variant_access (__what=<synthetic pointer>) at /usr/include/c++/13/variant:1349 #5 std::__throw_bad_variant_access (__valueless=<optimized out>) at /usr/include/c++/13/variant:1355 #6 0x0000555bfff5c2c2 in std::get<0ul, QQmlJS::Dom::ScriptElementVariant, QQmlJS::Dom::ScriptElements::ScriptList> (__v=<optimized out>) at /usr/include/c++/13/variant:1727 #7 std::get<QQmlJS::Dom::ScriptElementVariant, QQmlJS::Dom::ScriptElementVariant, QQmlJS::Dom::ScriptElements::ScriptList> (__v=<optimized out>) at /usr/include/c++/13/variant:1165 #8 QQmlJS::Dom::QQmlDomAstCreator::ScriptStackElement::takeVariant (this=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator_p.h:101 #9 QQmlJS::Dom::QQmlDomAstCreator::visit (this=this@entry=0x7fc4ac007280, list=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator.cpp:1084 #10 0x0000555c0014f36c in QQmlJS::Dom::QQmlDomAstCreator::visit (list=0x7fc4ac00fbf8, this=0x7fc4ac007280) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator_p.h:626 #11 QQmlJS::Dom::QQmlDomAstCreatorWithQQmlJSScope::visitT<QQmlJS::AST::ArgumentList> (t=0x7fc4ac00fbf8, this=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator_p.h:626 #12 QQmlJS::Dom::QQmlDomAstCreatorWithQQmlJSScope::visitT<QQmlJS::AST::ArgumentList> (t=0x7fc4ac00fbf8, this=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator_p.h:613 #13 QQmlJS::Dom::QQmlDomAstCreatorWithQQmlJSScope::visit (this=0x7fc4ac006f70, node=0x7fc4ac00fbf8) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator.cpp:2807 #14 0x00007fc4d0aad0b0 in QQmlJS::AST::ArgumentList::accept0 (this=0x7fc4ac00fbf8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:585 #15 0x00007fc4d094828d in QQmlJS::AST::Node::accept (this=0x7fc4ac00fbf8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #16 0x00007fc4d0ab0585 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #17 QQmlJS::AST::CallExpression::accept0 (this=0x7fc4ac0101b0, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:577 #18 0x00007fc4d0aaeba3 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac0101b0) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #19 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac0101b0) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #20 QQmlJS::AST::ExpressionStatement::accept0 (this=0x7fc4ac0101f8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:775 #21 0x00007fc4d0ab2966 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac0101f8) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #22 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac0101f8) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #23 QQmlJS::AST::UiScriptBinding::accept0 (this=0x7fc4ac010220, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1254 #24 0x00007fc4d0aad515 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac010220) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #25 QQmlJS::AST::Node::accept (visitor=<optimized out>, node=0x7fc4ac010220) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #26 QQmlJS::AST::UiObjectMemberList::accept0 (this=0x7fc4ac00f888, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1275 #27 0x00007fc4d0aafb93 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac00f888) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 --Type <RET> for more, q to quit, c to continue without paging--c #28 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac00f888) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #29 QQmlJS::AST::UiObjectInitializer::accept0 (this=0x7fc4ac010440, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1223 #30 0x00007fc4d0ab0693 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac010440) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #31 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac010440) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #32 QQmlJS::AST::UiObjectDefinition::accept0 (this=0x7fc4ac010478, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1214 #33 0x00007fc4d0aad3e5 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac010478) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #34 QQmlJS::AST::Node::accept (visitor=<optimized out>, node=0x7fc4ac010478) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #35 QQmlJS::AST::UiArrayMemberList::accept0 (this=0x7fc4ac00ae00, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1285 #36 0x00007fc4d0ab2056 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac00ae00) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #37 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac00ae00) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #38 QQmlJS::AST::UiArrayBinding::accept0 (this=0x7fc4ac0113c8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1265 #39 0x00007fc4d0ab39b7 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac0113c8) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #40 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac0113c8) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #41 QQmlJS::AST::UiPublicMember::accept0 (this=0x7fc4ac0112c0, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1202 #42 0x00007fc4d0aad515 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac0112c0) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #43 QQmlJS::AST::Node::accept (visitor=<optimized out>, node=0x7fc4ac0112c0) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #44 QQmlJS::AST::UiObjectMemberList::accept0 (this=0x7fc4ac0091b0, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1275 #45 0x00007fc4d0aafb93 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac0091b0) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #46 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac0091b0) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #47 QQmlJS::AST::UiObjectInitializer::accept0 (this=0x7fc4ac01ad48, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1223 #48 0x00007fc4d0ab0693 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac01ad48) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #49 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac01ad48) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #50 QQmlJS::AST::UiObjectDefinition::accept0 (this=0x7fc4ac01ad80, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1214 #51 0x00007fc4d0aad515 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac01ad80) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #52 QQmlJS::AST::Node::accept (visitor=<optimized out>, node=0x7fc4ac01ad80) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #53 QQmlJS::AST::UiObjectMemberList::accept0 (this=0x7fc4ac01ada8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1275 #54 0x00007fc4d0ab1ae7 in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, this=0x7fc4ac01ada8) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #55 QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=0x7fc4ac01ada8) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #56 QQmlJS::AST::UiProgram::accept0 (this=0x7fc4ac01adc8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast.cpp:1190 #57 0x0000555c0002fced in QQmlJS::AST::Node::accept (this=0x7fc4ac01adc8, visitor=0x7fc4ac006f70) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:272 #58 0x0000555c00146f3c in QQmlJS::AST::Node::accept (visitor=0x7fc4ac006f70, node=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qml/parser/qqmljsast_p.h:282 #59 QQmlJS::Dom::createDom (qmlFile=..., options=...) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomastcreator.cpp:2909 #60 0x0000555c00107f2c in QQmlJS::Dom::DomUniverse::execQueue (this=0x555c011b08a0, this@entry=0x18e916ee06cf8) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomtop.cpp:434 #61 0x0000555c00109751 in QQmlJS::Dom::DomUniverse::loadFile(QQmlJS::Dom::DomItem const&, QQmlJS::Dom::FileToLoad const&, std::function<void (QQmlJS::Dom::Path, QQmlJS: :Dom::DomItem const&, QQmlJS::Dom::DomItem const&)>, QFlags<QQmlJS::Dom::LoadOption>, std::optional<QQmlJS::Dom::DomType>) (this=0x18e916ee06cf8, self=<optimized out>, file=<optimized out>, callback=..., loadOptions=..., fileType=std::optional = {...}) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomtop.cpp:277 #62 0x0000555c0008e61a in QQmlJS::Dom::DomItem::loadFile(QQmlJS::Dom::FileToLoad const&, std::function<void (QQmlJS::Dom::Path, QQmlJS::Dom::DomItem const&, QQmlJS::Dom ::DomItem const&)>, QFlags<QQmlJS::Dom::LoadOption>, std::optional<QQmlJS::Dom::DomType>) const (this=this@entry=0x7fc4bd7feee0, file=..., callback=..., loadOptions=..., loadOptions@entry=..., fileType=std::optional = {...}) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomitem.cpp:2493 #63 0x0000555c001050a7 in QQmlJS::Dom::DomEnvironment::loadFile(QQmlJS::Dom::DomItem const&, QQmlJS::Dom::FileToLoad, std::function<void (QQmlJS::Dom::Path, QQmlJS::Dom ::DomItem const&, QQmlJS::Dom::DomItem const&)>, std::function<void (QQmlJS::Dom::Path, QQmlJS::Dom::DomItem const&, QQmlJS::Dom::DomItem const&)>, std::function<void ( QQmlJS::Dom::Path, QQmlJS::Dom::DomItem const&, QQmlJS::Dom::DomItem const&)>, QFlags<QQmlJS::Dom::LoadOption>, std::optional<QQmlJS::Dom::DomType>, std::function<void (QQmlJS::Dom::ErrorMessage const&)>) (this=0x7fc4ac003cd0, self=..., file=..., loadCallback=..., directDepsCallback=..., endCallback=..., loadOptions=..., fileType=std::optional [no contained value], h =...) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomtop.cpp:1377 #64 0x0000555c0008e73f in QQmlJS::Dom::DomItem::loadFile(QQmlJS::Dom::FileToLoad const&, std::function<void (QQmlJS::Dom::Path, QQmlJS::Dom::DomItem const&, QQmlJS::Dom ::DomItem const&)>, QFlags<QQmlJS::Dom::LoadOption>, std::optional<QQmlJS::Dom::DomType>) const (this=this@entry=0x7fc4bd7ff3d0, file=..., callback=..., loadOptions=..., loadOptions@entry=..., fileType=std::optional [no contained value]) at /home/nico/workspace/qt6/qtdeclarative/src/qmldom/qqmldomitem.cpp:2499 #65 0x0000555bfffa7efa in QmlLsp::QQmlCodeModel::newDocForOpenFile (this=this@entry=0x7ffdeef565c0, url=..., version=version@entry=0, docText=...) at /home/nico/workspace/qt6/qtdeclarative/src/qmlls/qqmlcodemodel.cpp:597 #66 0x0000555bfffa89f1 in QmlLsp::QQmlCodeModel::openUpdate (this=this@entry=0x7ffdeef565c0, url=...) at /home/nico/workspace/qt6/qtdeclarative/src/qmlls/qqmlcodemodel.cpp:843 #67 0x0000555bfffa8ccc in QmlLsp::QQmlCodeModel::openUpdateSome (this=0x7ffdeef565c0) at /home/nico/workspace/qt6/qtdeclarative/src/qmlls/qqmlcodemodel.cpp:414 #68 0x0000555bfffa8ec1 in operator() (__closure=<optimized out>) at /home/nico/workspace/qt6/qtdeclarative/src/qmlls/qqmlcodemodel.cpp:378 #69 QRunnable::QGenericRunnable::Helper<QmlLsp::QQmlCodeModel::openNeedUpdate()::<lambda()> >::impl(QRunnable::QGenericRunnable::HelperBase::Op, QRunnable::QGenericRunn able::HelperBase *, void *) (op=<optimized out>, that=0x7fc4b8002890, arg=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/thread/qrunnable.h:73 #70 0x00007fc4d0101cb4 in QThreadPoolThread::run (this=0x555c011c4080) at /home/nico/workspace/qt6/qtbase/src/corelib/thread/qthreadpool.cpp:68 #71 0x00007fc4d00f98b7 in operator() (__closure=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:326 #72 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:262 #73 QThreadPrivate::start (arg=0x555c011c4080) at /home/nico/workspace/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:285 #74 0x00007fc4d04d3897 in start_thread (arg=<optimized out>) at pthread_create.c:444 #75 0x00007fc4d055aa5c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Attachments
Issue Links
- relates to
-
QTBUG-124129 qmlls crashes
- Closed
For Gerrit Dashboard: QTBUG-123871 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
550241,9 | dom: avoid asserts during dom construction | 6.7 | qt/qtdeclarative | Status: MERGED | +2 | +1 |
552551,4 | dom: avoid asserts during dom construction | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |