Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
Qt Creator 6.0.0-beta1
-
None
-
b798fce4654739b59b2ca11e5d30123bfb2ca209 (qt-creator/tqtc-qt-creator/5.0)
Description
Thread 1 (Thread 0x7f2030ff9640 (LWP 100917)): #0 0x00007f20773322a2 in raise () from /usr/lib64/libc.so.6 #1 0x00007f207731b8a4 in abort () from /usr/lib64/libc.so.6 #2 0x00007f207792b423 in qt_message_fatal (context=..., message=...) at /home/jarek/dev/qt-62/qtbase/src/corelib/global/qlogging.cpp:1898 #3 0x00007f2077927598 in QMessageLogger::fatal (this=0x7f2030ff2dc0, msg=0x7f2077dacb28 "ASSERT: \"%s\" in file %s, line %d") at /home/jarek/dev/qt-62/qtbase/src/corelib/global/qlogging.cpp:890 #4 0x00007f207791c5f0 in qt_assert (assertion=0x7f205c32b596 "offsets[i] == UnusedEntry", file=0x7f205c32b3d0 "/home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h", line=335) at /home/jarek/dev/qt-62/qtbase/src/corelib/global/qglobal.cpp:3281 #5 0x00007f205c2cd0f8 in QHashPrivate::Span<QHashPrivate::Node<TextEditor::TextMark*, QHashDummyValue> >::insert (this=0x7f2019f59578, i=69) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h:335 #6 0x00007f205c2ccfb6 in QHashPrivate::Data<QHashPrivate::Node<TextEditor::TextMark*, QHashDummyValue> >::rehash (this=0x7f200cfdb4a0, sizeHint=33) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h:564 #7 0x00007f205c2cc588 in QHashPrivate::Data<QHashPrivate::Node<TextEditor::TextMark*, QHashDummyValue> >::findOrInsert (this=0x7f200cfdb4a0, key=@0x7f2030ff2fa8: 0x7f20186f86e0) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h:633 #8 0x00007f205c2cb159 in QHash<TextEditor::TextMark*, QHashDummyValue>::emplace<QHashDummyValue const&> (this=0x29b1538, key=@0x7f2030ff2fa8: 0x7f20186f86e0) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h:1179 #9 0x00007f205c2c948c in QHash<TextEditor::TextMark*, QHashDummyValue>::emplace<QHashDummyValue const&> (this=0x29b1538, key=@0x7f2030ff3058: 0x7f20186f86e0) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h:1171 #10 0x00007f205c2c7dc3 in QHash<TextEditor::TextMark*, QHashDummyValue>::insert (this=0x29b1538, key=@0x7f2030ff3058: 0x7f20186f86e0, value=...) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qhash.h:1149 #11 0x00007f205c2c6dd4 in QSet<TextEditor::TextMark*>::insert (this=0x29b1538, value=@0x7f2030ff3058: 0x7f20186f86e0) at /home/jarek/dev/qt-62/qtbase/src/corelib/tools/qset.h:187 #12 0x00007f205c2c5337 in TextEditor::TextMarkRegistry::add (mark=0x7f20186f86e0) at /home/jarek/dev/creator-6/src/plugins/texteditor/textmark.cpp:424 #13 0x00007f205c2c338c in TextEditor::TextMark::TextMark (this=0x7f20186f86e0, fileName=..., lineNumber=2, category=..., widthFactor=1) at /home/jarek/dev/creator-6/src/plugins/texteditor/textmark.cpp:95 #14 0x00007f205105842b in ProjectExplorer::TaskMark::TaskMark (this=0x7f20186f86e0, task=...) at /home/jarek/dev/creator-6/src/plugins/projectexplorer/taskhub.cpp:66 #15 0x00007f2051058136 in ProjectExplorer::TaskHub::addTask (task=...) at /home/jarek/dev/creator-6/src/plugins/projectexplorer/taskhub.cpp:164 #16 0x00007f2050272197 in QtSupport::ProMessageHandler::message (this=0x83deba0, type=784, msg=..., fileName=..., lineNo=2) at /home/jarek/dev/creator-6/src/plugins/qtsupport/profilereader.cpp:68 #17 0x00007f20501622e7 in QMakeEvaluator::message (this=0x83decc0, type=784, msg=...) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:2080 #18 0x00007f205013ffa7 in QMakeEvaluator::evalError (this=0x83decc0, msg=...) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.h:198 #19 0x00007f2050161c2f in QMakeEvaluator::evaluateFeatureFile (this=0x83decc0, fileName=..., silent=false) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:2031 #20 0x00007f205013b510 in QMakeEvaluator::evaluateBuiltinConditional (this=0x83decc0, func_t=22, function=..., args=...) at /home/jarek/dev/creator-6/src/shared/proparser/qmakebuiltins.cpp:1749 #21 0x00007f2050160458 in QMakeEvaluator::evaluateConditionalFunction (this=0x83decc0, func=..., tokPtr=@0x7f2030ff5960: 0x7f200cfe72e4) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:1770 #22 0x00007f2050157a96 in QMakeEvaluator::visitProBlock (this=0x83decc0, tokPtr=0x7f200cfe72e4) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:671 #23 0x00007f2050157105 in QMakeEvaluator::visitProBlock (this=0x83decc0, tokPtr=0x7f200cfe72c2) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:563 #24 0x00007f2050156e5d in QMakeEvaluator::visitProBlock (this=0x83decc0, pro=0x7f200cec0740, tokPtr=0x7f200cfe7280) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:515 #25 0x00007f205015d49d in QMakeEvaluator::visitProFile (this=0x83decc0, pro=0x7f200cec0740, type=QMakeHandler::EvalFeatureFile, flags=...) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:1457 #26 0x00007f20501612a3 in QMakeEvaluator::evaluateFile (this=0x83decc0, fileName=..., type=QMakeHandler::EvalFeatureFile, flags=...) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:1936 #27 0x00007f2050161e04 in QMakeEvaluator::evaluateFeatureFile (this=0x83decc0, fileName=..., silent=true) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:2049 #28 0x00007f205015caaa in QMakeEvaluator::evaluateConfigFeatures (this=0x83decc0) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:1342 #29 0x00007f205015d68a in QMakeEvaluator::visitProFile (this=0x83decc0, pro=0x7f2019f54b50, type=QMakeHandler::EvalProjectFile, flags=...) at /home/jarek/dev/creator-6/src/shared/proparser/qmakeevaluator.cpp:1475 #30 0x00007f205010a2ec in ProFileEvaluator::accept (this=0x83dec50, pro=0x7f2019f54b50, flags=...) at /home/jarek/dev/creator-6/src/shared/proparser/profileevaluator.cpp:244 #31 0x00007f204a26899f in evaluateOne (input=..., pro=0x7f2019f54b50, reader=0x83deba0, cumulative=false, buildPassReader=0x7f2030ff72a0) at /home/jarek/dev/creator-6/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp:1342 #32 0x00007f204a269178 in QmakeProjectManager::QmakeProFile::evaluate (input=...) at /home/jarek/dev/creator-6/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp:1385 #33 0x00007f204a26d3ee in QmakeProjectManager::QmakeProFile::asyncEvaluate (this=0x7f200ca59050, fi=..., input=...) at /home/jarek/dev/creator-6/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp:1640 #34 0x00007f204a2a29e9 in Utils::Internal::MemberCallable<void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput)>::operator() (this=0x7f2030ff8a10, args#0=..., args#1=...) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:227 #35 0x00007f204a2a2913 in Utils::Internal::runAsyncQFutureInterfaceDispatch<QmakeProjectManager::Internal::QmakeEvalResult*, Utils::Internal::MemberCallable<void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput)>, QmakeProjectManager::Internal::QmakeEvalInput> (futureInterface=..., function=...) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:257 #36 0x00007f204a2a28d6 in Utils::Internal::runAsyncMemberDispatch<QmakeProjectManager::Internal::QmakeEvalResult*, Utils::Internal::MemberCallable<void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput)>, QmakeProjectManager::Internal::QmakeEvalInput, void> (futureInterface=..., function=...) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:274 #37 0x00007f204a2a2852 in Utils::Internal::runAsyncImpl<QmakeProjectManager::Internal::QmakeEvalResult*, Utils::Internal::MemberCallable<void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput)>, QmakeProjectManager::Internal::QmakeEvalInput> (futureInterface=..., function=...) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:303 #38 0x00007f204a2a2769 in Utils::Internal::runAsyncMemberDispatch<QmakeProjectManager::Internal::QmakeEvalResult*, void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput), QmakeProjectManager::QmakeProFile*, QmakeProjectManager::Internal::QmakeEvalInput, void> (futureInterface=..., function=@0x83dfd28: (void (QmakeProjectManager::QmakeProFile::*)(QmakeProjectManager::QmakeProFile * const, QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*> &, QmakeProjectManager::Internal::QmakeEvalInput)) 0x7f204a26d3ce <QmakeProjectManager::QmakeProFile::asyncEvaluate(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput)>, obj=@0x83dfd20: 0x7f200ca59050) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:285 #39 0x00007f204a2a26a0 in Utils::Internal::runAsyncImpl<QmakeProjectManager::Internal::QmakeEvalResult*, void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput), QmakeProjectManager::QmakeProFile*, QmakeProjectManager::Internal::QmakeEvalInput> (futureInterface=..., function=@0x83dfd28: (void (QmakeProjectManager::QmakeProFile::*)(QmakeProjectManager::QmakeProFile * const, QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*> &, QmakeProjectManager::Internal::QmakeEvalInput)) 0x7f204a26d3ce <QmakeProjectManager::QmakeProFile::asyncEvaluate(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput)>) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:303 #40 0x00007f204a2a2598 in Utils::Internal::AsyncJob<QmakeProjectManager::Internal::QmakeEvalResult*, void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput), QmakeProjectManager::QmakeProFile*, QmakeProjectManager::Internal::QmakeEvalInput&>::runHelper<0ul, 1ul, 2ul> (this=0x83dfbf0) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:372 #41 0x00007f204a2a2447 in Utils::Internal::AsyncJob<QmakeProjectManager::Internal::QmakeEvalResult*, void (QmakeProjectManager::QmakeProFile::*)(QFutureInterface<QmakeProjectManager::Internal::QmakeEvalResult*>&, QmakeProjectManager::Internal::QmakeEvalInput), QmakeProjectManager::QmakeProFile*, QmakeProjectManager::Internal::QmakeEvalInput&>::run (this=0x83dfbf0) at /home/jarek/dev/creator-6/src/libs/utils/runextensions.h:352 #42 0x00007f2077c51f04 in QThreadPoolThread::run (this=0x7d2bcc0) at /home/jarek/dev/qt-62/qtbase/src/corelib/thread/qthreadpool.cpp:99 #43 0x00007f2077c4b017 in QThreadPrivate::start (arg=0x7d2bcc0) at /home/jarek/dev/qt-62/qtbase/src/corelib/thread/qthread_unix.cpp:336 #44 0x00007f20774cd299 in start_thread () from /usr/lib64/libpthread.so.0 #45 0x00007f20773f5353 in clone () from /usr/lib64/libc.so.6
it looks like TaskHub::addTask() is being called from non-main thread, which can't work properly (TextMarkRegistry::add() is operating on GUI classes directly).
Attachments
Issue Links
- is required for
-
QTCREATORBUG-25709 Reduce crashes on exit / session switch
- Closed
- relates to
-
QTCREATORBUG-26333 Crash on shutdown inside QmakeProjectManager
- Closed