Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-25265

Creator crashes when switching session

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Not Evaluated
    • None
    • Qt Creator 4.14.0
    • None

    Description

      #0  0x00007f6ac0edc448 in _int_malloc () from /lib64/libc.so.6
      #1  0x00007f6ac0edd7f1 in malloc () from /lib64/libc.so.6
      #2  0x00007f6ac1229959 in operator new(unsigned long) () from /lib64/libstdc++.so.6
      #3  0x00007f6ac27eccbd in QWidgetPrivate::init (this=0x499ea00, parentWidget=0x0, f=...)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qwidget.cpp:1065
      #4  0x00007f6ac27ec1a1 in QWidget::QWidget (this=0x4418db0, dd=..., parent=0x0, f=...) at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qwidget.cpp:903
      #5  0x00007f6ac28fbd65 in QAbstractButton::QAbstractButton (this=0x4418db0, dd=..., parent=0x0)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/widgets/qabstractbutton.cpp:525
      #6  0x00007f6ac2a2f7c7 in QToolButton::QToolButton (this=0x4418db0, parent=0x0) at /home/jarek/dev/qt-515/qtbase/src/widgets/widgets/qtoolbutton.cpp:192
      #7  0x00007f6a9969877f in CppEditor::Internal::MinimizableInfoBars::createShowInfoBarActions(std::function<QAction* (QWidget*)> const&) (actionCreator=...)
          at /home/jarek/dev/creator-414/src/plugins/cppeditor/cppminimizableinfobars.cpp:75
      #8  0x00007f6a9965b64b in CppEditor::Internal::CppEditorWidget::finalizeInitialization (this=0x4104cf0)
          at /home/jarek/dev/creator-414/src/plugins/cppeditor/cppeditorwidget.cpp:256
      #9  0x00007f6aa60196f8 in TextEditor::Internal::TextEditorFactoryPrivate::createEditorHelper (this=0x270f190, document=...)
          at /home/jarek/dev/creator-414/src/plugins/texteditor/texteditor.cpp:8854
      #10 0x00007f6aa6019081 in operator() (__closure=0x272cd70) at /home/jarek/dev/creator-414/src/plugins/texteditor/texteditor.cpp:8752
      #11 0x00007f6aa601e81c in std::__invoke_impl<TextEditor::BaseTextEditor*, TextEditor::TextEditorFactory::setEditorCreator(const EditorCreator&)::<lambda()>&>(std::__invoke_other, struct {...} &) (__f=...) at /usr/include/c++/10/bits/invoke.h:60
      #12 0x00007f6aa601cd3b in std::__invoke_r<Core::IEditor*, TextEditor::TextEditorFactory::setEditorCreator(const EditorCreator&)::<lambda()>&>(struct {...} &) (__fn=...) at /usr/include/c++/10/bits/invoke.h:113
      #13 0x00007f6aa601b517 in std::_Function_handler<Core::IEditor*(), TextEditor::TextEditorFactory::setEditorCreator(const EditorCreator&)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/10/bits/std_function.h:291
      #14 0x00007f6aa642e9ec in std::function<Core::IEditor* ()>::operator()() const (this=0x272cd70) at /usr/include/c++/10/bits/std_function.h:622
      #15 0x00007f6aa642e1b2 in Core::IEditorFactory::createEditor (this=0x272cd48)
          at /home/jarek/dev/creator-414/src/plugins/coreplugin/editormanager/ieditorfactory.cpp:203
      #16 0x00007f6aa64008c0 in Core::Internal::EditorManagerPrivate::createEditor (factory=0x272cd48, fileName=...)
          at /home/jarek/dev/creator-414/src/plugins/coreplugin/editormanager/editormanager.cpp:1421
      #17 0x00007f6aa63fcd7d in Core::Internal::EditorManagerPrivate::openEditor (view=0x20470f0, fileName=..., editorId=..., flags=..., newEditor=0x0)
          at /home/jarek/dev/creator-414/src/plugins/coreplugin/editormanager/editormanager.cpp:845
      #18 0x00007f6aa6429ce7 in Core::Internal::SplitterOrView::restoreState (this=0x2046fc0, state=...)
          at /home/jarek/dev/creator-414/src/plugins/coreplugin/editormanager/editorview.cpp:956
      #19 0x00007f6aa640b6ac in Core::EditorManager::restoreState (state=...)
          at /home/jarek/dev/creator-414/src/plugins/coreplugin/editormanager/editormanager.cpp:3598
      #20 0x00007f6aa5a474df in ProjectExplorer::SessionManagerPrivate::restoreEditors (this=0x21588d0, reader=...)
          at /home/jarek/dev/creator-414/src/plugins/projectexplorer/session.cpp:935
      #21 0x00007f6aa5a482cc in ProjectExplorer::SessionManager::loadSession (session=..., initial=false)
          at /home/jarek/dev/creator-414/src/plugins/projectexplorer/session.cpp:1090
      #22 0x00007f6aa598d23f in ProjectExplorer::ProjectExplorerPluginPrivate::setSession (this=0x21706b0, action=0x4d5e7d0)
          at /home/jarek/dev/creator-414/src/plugins/projectexplorer/projectexplorer.cpp:3860
      #23 0x00007f6aa59ab92e in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QAction*>, void, void (ProjectExplorer::ProjectExplorerPluginPrivate::*)(QAction*)>::call (f=
          (void (ProjectExplorer::ProjectExplorerPluginPrivate::*)(ProjectExplorer::ProjectExplorerPluginPrivate * const, QAction *)) 0x7f6aa598d1ba <ProjectExplorer::ProjectExplorerPluginPrivate::setSession(QAction*)>, o=0x21706b0, arg=0x7ffdf52485a0)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobjectdefs_impl.h:152
      #24 0x00007f6aa59aa424 in QtPrivate::FunctionPointer<void (ProjectExplorer::ProjectExplorerPluginPrivate::*)(QAction*)>::call<QtPrivate::List<QAction*>, void> (f=
          (void (ProjectExplorer::ProjectExplorerPluginPrivate::*)(ProjectExplorer::ProjectExplorerPluginPrivate * const, QAction *)) 0x7f6aa598d1ba <ProjectExplorer::ProjectExplorerPluginPrivate::setSession(QAction*)>, o=0x21706b0, arg=0x7ffdf52485a0)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobjectdefs_impl.h:185
      #25 0x00007f6aa59a87a9 in QtPrivate::QSlotObject<void (ProjectExplorer::ProjectExplorerPluginPrivate::*)(QAction*), QtPrivate::List<QAction*>, void>::impl (
          which=1, this_=0x49ba4f0, r=0x21706b0, a=0x7ffdf52485a0, ret=0x0) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobjectdefs_impl.h:418
      #26 0x00007f6ac16c7d3f in QtPrivate::QSlotObjectBase::call (this=0x49ba4f0, r=0x21706b0, a=0x7ffdf52485a0)
          at ../../include/QtCore/../../../../qt-515/qtbase/src/corelib/kernel/qobjectdefs_impl.h:398
      #27 0x00007f6ac1706e23 in doActivate<false> (sender=0x4d5c750, signal_index=3, argv=0x7ffdf52485a0)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobject.cpp:3886
      #28 0x00007f6ac170099f in QMetaObject::activate (sender=0x4d5c750, m=0x7f6ac2efe520 <QActionGroup::staticMetaObject>, local_signal_index=0, 
          argv=0x7ffdf52485a0) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobject.cpp:3946
      #29 0x00007f6ac27addaf in QActionGroup::triggered (this=0x4d5c750, _t1=0x4d5e7d0) at .moc/moc_qactiongroup.cpp:268
      #30 0x00007f6ac27acecb in QActionGroupPrivate::_q_actionTriggered (this=0x4d98930) at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qactiongroup.cpp:94
      #31 0x00007f6ac27ad912 in QActionGroup::qt_static_metacall (_o=0x4d5c750, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7ffdf52487f0)
          at .moc/moc_qactiongroup.cpp:141
      #32 0x00007f6ac1706ebc in doActivate<false> (sender=0x4d5e7d0, signal_index=4, argv=0x7ffdf52487f0)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobject.cpp:3898
      #33 0x00007f6ac170099f in QMetaObject::activate (sender=0x4d5e7d0, m=0x7f6ac2efe420 <QAction::staticMetaObject>, local_signal_index=1, argv=0x7ffdf52487f0)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qobject.cpp:3946
      #34 0x00007f6ac27a9756 in QAction::triggered (this=0x4d5e7d0, _t1=true) at .moc/moc_qaction.cpp:376
      #35 0x00007f6ac27a86af in QAction::activate (this=0x4d5e7d0, event=QAction::Trigger) at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qaction.cpp:1161
      #36 0x00007f6ac29b262a in QMenuPrivate::activateCausedStack (this=0x21fcca0, causedStack=..., action=0x4d5e7d0, action_e=QAction::Trigger, self=true)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/widgets/qmenu.cpp:1384
      #37 0x00007f6ac29b2a16 in QMenuPrivate::activateAction (this=0x21fcca0, action=0x4d5e7d0, action_e=QAction::Trigger, self=true)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/widgets/qmenu.cpp:1461
      #38 0x00007f6ac29b74ff in QMenu::mouseReleaseEvent (this=0x21ef9a0, e=0x7ffdf5249520) at /home/jarek/dev/qt-515/qtbase/src/widgets/widgets/qmenu.cpp:2967
      #39 0x00007f6ac2802fd7 in QWidget::event (this=0x21ef9a0, event=0x7ffdf5249520) at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qwidget.cpp:8646
      #40 0x00007f6ac29b7db2 in QMenu::event (this=0x21ef9a0, e=0x7ffdf5249520) at /home/jarek/dev/qt-515/qtbase/src/widgets/widgets/qmenu.cpp:3089
      #41 0x00007f6ac27b9859 in QApplicationPrivate::notify_helper (this=0x1a26f10, receiver=0x21ef9a0, e=0x7ffdf5249520)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qapplication.cpp:3632
      #42 0x00007f6ac27b73e2 in QApplication::notify (this=0x7ffdf524a730, receiver=0x21ef9a0, e=0x7ffdf5249520)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qapplication.cpp:3076
      #43 0x00007f6ac16b6b68 in QCoreApplication::notifyInternal2 (receiver=0x21ef9a0, event=0x7ffdf5249520)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qcoreapplication.cpp:1064
      #44 0x00007f6ac16b753a in QCoreApplication::sendSpontaneousEvent (receiver=0x21ef9a0, event=0x7ffdf5249520)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qcoreapplication.cpp:1474
      #45 0x00007f6ac27b5fb3 in QApplicationPrivate::sendMouseEvent (receiver=0x21ef9a0, event=0x7ffdf5249520, alienWidget=0x0, nativeWidget=0x21ef9a0, 
          buttonDown=0x7f6ac2f2ca30 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qapplication.cpp:2614
      #46 0x00007f6ac28318e8 in QWidgetWindow::handleMouseEvent (this=0x7f6aa80043a0, event=0x7ffdf524a050)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qwidgetwindow.cpp:580
      #47 0x00007f6ac2830ab2 in QWidgetWindow::event (this=0x7f6aa80043a0, event=0x7ffdf524a050)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qwidgetwindow.cpp:300
      #48 0x00007f6ac27b9859 in QApplicationPrivate::notify_helper (this=0x1a26f10, receiver=0x7f6aa80043a0, e=0x7ffdf524a050)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qapplication.cpp:3632
      #49 0x00007f6ac27b6d0f in QApplication::notify (this=0x7ffdf524a730, receiver=0x7f6aa80043a0, e=0x7ffdf524a050)
          at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qapplication.cpp:2972
      #50 0x00007f6ac16b6b68 in QCoreApplication::notifyInternal2 (receiver=0x7f6aa80043a0, event=0x7ffdf524a050)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qcoreapplication.cpp:1064
      #51 0x00007f6ac16b753a in QCoreApplication::sendSpontaneousEvent (receiver=0x7f6aa80043a0, event=0x7ffdf524a050)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qcoreapplication.cpp:1474
      #52 0x00007f6ac1e4ddcb in QGuiApplicationPrivate::processMouseEvent (e=0x4d4c9b0) at /home/jarek/dev/qt-515/qtbase/src/gui/kernel/qguiapplication.cpp:2282
      #53 0x00007f6ac1e4d019 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x4d4c9b0)
          at /home/jarek/dev/qt-515/qtbase/src/gui/kernel/qguiapplication.cpp:2002
      #54 0x00007f6ac1e2d6a2 in QWindowSystemInterface::sendWindowSystemEvents (flags=...)
          at /home/jarek/dev/qt-515/qtbase/src/gui/kernel/qwindowsysteminterface.cpp:1169
      #55 0x00007f6ab048d1a3 in xcbSourceDispatch (source=0x1afbc20) at /home/jarek/dev/qt-515/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105
      #56 0x00007f6abe35496f in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
      #57 0x00007f6abe3a6758 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
      #58 0x00007f6abe351d43 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
      #59 0x00007f6ac1745850 in QEventDispatcherGlib::processEvents (this=0x1af5120, flags=...)
          at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:423
      #60 0x00007f6ab048d3c0 in QXcbGlibEventDispatcher::processEvents (this=0x1af5120, flags=...)
          at /home/jarek/dev/qt-515/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:143
      #61 0x00007f6ac16b363f in QEventLoop::processEvents (this=0x7ffdf524a520, flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qeventloop.cpp:139
      #62 0x00007f6ac16b394c in QEventLoop::exec (this=0x7ffdf524a520, flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qeventloop.cpp:232
      #63 0x00007f6ac16b7357 in QCoreApplication::exec () at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qcoreapplication.cpp:1375
      #64 0x00007f6ac1e4ca7c in QGuiApplication::exec () at /home/jarek/dev/qt-515/qtbase/src/gui/kernel/qguiapplication.cpp:1867
      #65 0x00007f6ac27b670f in QApplication::exec () at /home/jarek/dev/qt-515/qtbase/src/widgets/kernel/qapplication.cpp:2824
      #66 0x000000000040e75d in main (argc=1, argv=0x7ffdf524b008) at /home/jarek/dev/creator-414/src/app/main.cpp:742
      

      Update: more interesting is another thread from this crash:

      #0  0x00007f6ac0f4780f in poll () from /lib64/libc.so.6
      #1  0x00007f6abe3a66f6 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
      #2  0x00007f6abe351d43 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
      #3  0x00007f6ac1745850 in QEventDispatcherGlib::processEvents (this=0x7f6980a94170, flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:423
      #4  0x00007f6ac16b363f in QEventLoop::processEvents (this=0x7f6a2cff8820, flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qeventloop.cpp:139
      #5  0x00007f6ac16b394c in QEventLoop::exec (this=0x7f6a2cff8820, flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/kernel/qeventloop.cpp:232
      #6  0x00007f6aa64dc5ce in Utils::Internal::MapReduceBase<QList<Core::ILocatorFilter*>::iterator, void, void (Core::ILocatorFilter::*)(QFutureInterface<void>&), void*, void, Utils::Internal::DummyReduce<void> >::exec (this=0x7f6a2cff87b0) at /home/jarek/dev/creator-414/src/libs/utils/mapreduce.h:88
      #7  0x00007f6aa64db701 in Utils::Internal::blockingIteratorMapReduce<QList<Core::ILocatorFilter*>::iterator, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), void, Utils::Internal::DummyReduce<void>, void (*)(void*)> (futureInterface=..., begin=..., end=..., init=@0x3f8a798: 0x7f6aa64d5e57 <Utils::Internal::dummyInit<void>()>, map=@0x3f8a788: &virtual table offset 120, reduce=..., cleanup=@0x3f8a780: 0x7f6aa64d5e62 <Utils::Internal::dummyCleanup<void>(void*)>, option=Utils::MapReduceOption::Unordered, pool=0x0, size=1) at /home/jarek/dev/creator-414/src/libs/utils/mapreduce.h:293
      #8  0x00007f6aa64dabef in Utils::Internal::blockingContainerMapReduce<QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), void, Utils::Internal::DummyReduce<void>, void (*)(void*)> (futureInterface=..., container=..., init=@0x3f8a798: 0x7f6aa64d5e57 <Utils::Internal::dummyInit<void>()>, map=@0x3f8a788: &virtual table offset 120, reduce=..., cleanup=@0x3f8a780: 0x7f6aa64d5e62 <Utils::Internal::dummyCleanup<void>(void*)>, option=Utils::MapReduceOption::Unordered, pool=0x0) at /home/jarek/dev/creator-414/src/libs/utils/mapreduce.h:305
      #9  0x00007f6aa64e2598 in Utils::Internal::runAsyncQFutureInterfaceDispatch<void, void (*)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*> (futureInterface=..., function=@0x3f8a7a8: 0x7f6aa64dab2e <Utils::Internal::blockingContainerMapReduce<QList<Core::ILoc--Type <RET> for more, q to quit, c to continue without paging--c
      atorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), void, Utils::Internal::DummyReduce<void>, void (*)(void*)>(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*)>) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:257
      #10 0x00007f6aa64e22c0 in Utils::Internal::runAsyncMemberDispatch<void, void (*)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*, void> (futureInterface=..., function=@0x3f8a7a8: 0x7f6aa64dab2e <Utils::Internal::blockingContainerMapReduce<QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), void, Utils::Internal::DummyReduce<void>, void (*)(void*)>(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*)>) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:274
      #11 0x00007f6aa64e1fe0 in Utils::Internal::runAsyncImpl<void, void (*)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*> (futureInterface=..., function=@0x3f8a7a8: 0x7f6aa64dab2e <Utils::Internal::blockingContainerMapReduce<QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), void, Utils::Internal::DummyReduce<void>, void (*)(void*)>(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*)>) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:303
      #12 0x00007f6aa64e1c7e in Utils::Internal::AsyncJob<void, void (&)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>&, void* (&)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (&)(void*), Utils::MapReduceOption&, QThreadPool*&>::runHelper<0ul, 1ul, 2ul, 3ul, 4ul, 5ul, 6ul, 7ul> (this=0x3f8a760) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:372
      #13 0x00007f6aa64e19da in Utils::Internal::AsyncJob<void, void (&)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>&, void* (&)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (&)(void*), Utils::MapReduceOption&, QThreadPool*&>::run (this=0x3f8a760) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:352
      #14 0x00007f6ac312e4f7 in Utils::Internal::RunnableThread::run (this=0x4423ff0) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.cpp:39
      #15 0x00007f6ac144e30e in QThreadPrivate::start (arg=0x4423ff0) at /home/jarek/dev/qt-515/qtbase/src/corelib/thread/qthread_unix.cpp:329
      #16 0x00007f6ac06e63f9 in start_thread () from /lib64/libpthread.so.0
      #17 0x00007f6ac0f52903 in clone () from /lib64/libc.so.6
      

      Most probably the reason may the, that we are using not reentrant QEventLoop class in non-gui thread. See the implementation of MapReduceBase::exec() in mapreduce.h : line 88

      One more thread from the crash:

      Thread 8 (Thread 0x7f6a91229640 (LWP 37124)):
      #0  (anonymous namespace)::add_overflow<unsigned int> (v1=86, v2=24, r=0x7f6a91228250) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../../../qt-515/qtbase/src/corelib/global/qnumeric_p.h:259
      #1  0x00007f6ac1462279 in qCalculateBlockSize (elementCount=86, elementSize=1, headerSize=24) at /home/jarek/dev/qt-515/qtbase/src/corelib/tools/qarraydata.cpp:99
      #2  0x00007f6ac14622ef in qCalculateGrowingBlockSize (elementCount=86, elementSize=1, headerSize=24) at /home/jarek/dev/qt-515/qtbase/src/corelib/tools/qarraydata.cpp:132
      #3  0x00007f6ac14623ab in calculateBlockSize (capacity=@0x7f6a91228308: 86, objectSize=1, headerSize=24, options=8) at /home/jarek/dev/qt-515/qtbase/src/corelib/tools/qarraydata.cpp:173
      #4  0x00007f6ac1462574 in QArrayData::allocate (objectSize=1, alignment=8, capacity=86, options=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/tools/qarraydata.cpp:217
      #5  0x00007f6ac14ffe05 in QTypedArrayData<char>::allocate (capacity=86, options=...) at ../../include/QtCore/../../../../qt-515/qtbase/src/corelib/tools/qarraydata.h:224
      #6  0x00007f6ac14f9f9d in QByteArray::reallocData (this=0x7f6a912284b8, alloc=86, options=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/text/qbytearray.cpp:1837
      #7  0x00007f6ac14fa646 in QByteArray::append (this=0x7f6a912284b8, ba=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/text/qbytearray.cpp:1996
      #8  0x00007f6ac1501139 in QByteArray::operator+= (this=0x7f6a912284b8, a=...) at ../../include/QtCore/../../../../qt-515/qtbase/src/corelib/text/qbytearray.h:657
      #9  0x00007f6ac1644f1e in QStringBuilder<QByteArray, QByteArray>::operator QByteArray (this=0x7f6a912284c0) at ../../include/QtCore/../../../../qt-515/qtbase/src/corelib/text/qstringbuilder.h:164
      #10 0x00007f6ac1644e07 in QFileSystemIterator::advance (this=0x7f6a34356380, fileEntry=..., metaData=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qfilesystemiterator_unix.cpp:129
      #11 0x00007f6ac15ce83f in QDirIteratorPrivate::advance (this=0x7f6a3400cde0) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdiriterator.cpp:275
      #12 0x00007f6ac15cf834 in QDirIterator::next (this=0x7f6a91228648) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdiriterator.cpp:521
      #13 0x00007f6ac15c6112 in QDir::entryList (this=0x7f6a91228758, nameFilters=..., filters=..., sort=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdir.cpp:1436
      #14 0x00007f6ac15c5f30 in QDir::entryList (this=0x7f6a91228758, filters=..., sort=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdir.cpp:1376
      #15 0x00007f6ac308d103 in Utils::SubDirFileIterator::update (this=0x7f6a91228870, index=0) at /home/jarek/dev/creator-414/src/libs/utils/filesearch.cpp:699
      #16 0x00007f6ac308c4d4 in Utils::FileIterator::begin (this=0x7f6a91228870) at /home/jarek/dev/creator-414/src/libs/utils/filesearch.cpp:589
      #17 0x00007f6aa64c7936 in Core::DirectoryFilter::refresh (this=0x7f6a91228870, future=...) at /home/jarek/dev/creator-414/src/plugins/coreplugin/locator/directoryfilter.cpp:245
      #18 0x00007f6aa64e2768 in std::_Tuple_impl<7ul, QThreadPool*>::_M_head (__t=...) at /usr/include/c++/10/tuple:349
      #19 0x00007f6aa64e26ea in std::_Tuple_impl<2ul, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*>::_M_head (__t=...) at /usr/include/c++/10/tuple:201
      #20 0x00007f6aa64e2629 in Utils::Internal::runAsyncImpl<void, Utils::Internal::MemberCallable<void (Core::ILocatorFilter::*)(QFutureInterface<void>&)>>(QFutureInterface<void>, Utils::Internal::MemberCallable<void (Core::ILocatorFilter::*)(QFutureInterface<void>&)>&&) (futureInterface=..., function=...) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:300
      #21 0x00007f6aa64e23cf in std::__get_helper<2ul, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*> (__t=...) at /usr/include/c++/10/tuple:1283
      #22 0x00007f6a91228ab0 in ?? ()
      #23 0x00007f6aa6743e28 in vtable for QFutureInterface<void> () from /home/jarek/dev/creator-414-build-515-cmake/lib/qtcreator/plugins/libCore.so
      #24 0x00007f6980465ab0 in ?? ()
      #25 0x00007f6a91228b00 in ?? ()
      #26 0x0000000002171020 in ?? ()
      #27 0x00007f6a91228ad0 in ?? ()
      #28 0x00007f6aa64e20d5 in std::get<3ul, void (*)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*> (__t=std::tuple containing = {...}) at /usr/include/c++/10/tuple:1294
      #29 0x0000000000000000 in ?? ()
      

      And similar one, from the same crash:

      Thread 18 (Thread 0x7f6a2ffff640 (LWP 37122)):
      #0  0x00007f6ac0f4861c in __open_nocancel () from /lib64/libc.so.6
      #1  0x00007f6ac0f1a3f9 in opendir () from /lib64/libc.so.6
      #2  0x00007f6ac1644c82 in QFileSystemIterator::QFileSystemIterator (this=0x7f698846b890, entry=..., filters=..., nameFilters=..., flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qfilesystemiterator_unix.cpp:104
      #3  0x00007f6ac15ce5fd in QDirIteratorPrivate::pushDirectory (this=0x7f69884bcbb0, fileInfo=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdiriterator.cpp:226
      #4  0x00007f6ac15ce348 in QDirIteratorPrivate::QDirIteratorPrivate (this=0x7f69884bcbb0, entry=..., nameFilters=..., _filters=..., flags=..., resolveEngine=true) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdiriterator.cpp:195
      #5  0x00007f6ac15cf7a4 in QDirIterator::QDirIterator (this=0x7f6a2fffe648, path=..., nameFilters=..., filters=..., flags=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdiriterator.cpp:498
      #6  0x00007f6ac15c60e3 in QDir::entryList (this=0x7f6a2fffe758, nameFilters=..., filters=..., sort=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdir.cpp:1434
      #7  0x00007f6ac15c5f30 in QDir::entryList (this=0x7f6a2fffe758, filters=..., sort=...) at /home/jarek/dev/qt-515/qtbase/src/corelib/io/qdir.cpp:1376
      #8  0x00007f6ac308d103 in Utils::SubDirFileIterator::update (this=0x7f6a2fffe870, index=0) at /home/jarek/dev/creator-414/src/libs/utils/filesearch.cpp:699
      #9  0x00007f6ac308c4d4 in Utils::FileIterator::begin (this=0x7f6a2fffe870) at /home/jarek/dev/creator-414/src/libs/utils/filesearch.cpp:589
      #10 0x00007f6aa64c7936 in Core::DirectoryFilter::refresh (this=0x7f6a2fffe870, future=...) at /home/jarek/dev/creator-414/src/plugins/coreplugin/locator/directoryfilter.cpp:245
      #11 0x00007f6aa64e2768 in std::_Tuple_impl<7ul, QThreadPool*>::_M_head (__t=...) at /usr/include/c++/10/tuple:349
      #12 0x00007f6aa64e26ea in std::_Tuple_impl<2ul, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*>::_M_head (__t=...) at /usr/include/c++/10/tuple:201
      #13 0x00007f6aa64e2629 in Utils::Internal::runAsyncImpl<void, Utils::Internal::MemberCallable<void (Core::ILocatorFilter::*)(QFutureInterface<void>&)>>(QFutureInterface<void>, Utils::Internal::MemberCallable<void (Core::ILocatorFilter::*)(QFutureInterface<void>&)>&&) (futureInterface=..., function=...) at /home/jarek/dev/creator-414/src/libs/utils/runextensions.h:300
      #14 0x00007f6aa64e23cf in std::__get_helper<2ul, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*> (__t=...) at /usr/include/c++/10/tuple:1283
      #15 0x00007f6a2fffeab0 in ?? ()
      #16 0x00007f6aa6743e28 in vtable for QFutureInterface<void> () from /home/jarek/dev/creator-414-build-515-cmake/lib/qtcreator/plugins/libCore.so
      #17 0x00007f6a2879aac0 in ?? ()
      #18 0x00007f6a2fffeb00 in ?? ()
      #19 0x0000000002171020 in ?? ()
      #20 0x00007f6a2fffead0 in ?? ()
      #21 0x00007f6aa64e20d5 in std::get<3ul, void (*)(QFutureInterface<void>&, QList<Core::ILocatorFilter*>&&, void* (*&&)(), void (Core::ILocatorFilter::*&&)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>&&, void (*&&)(void*), Utils::MapReduceOption, QThreadPool*), QList<Core::ILocatorFilter*>, void* (*)(), void (Core::ILocatorFilter::*)(QFutureInterface<void>&), Utils::Internal::DummyReduce<void>, void (*)(void*), Utils::MapReduceOption, QThreadPool*> (__t=std::tuple containing = {...}) at /usr/include/c++/10/tuple:1294
      #22 0x0000000000000000 in ?? ()
      

      Both stacks contain a call to Core::DirectoryFilter::refresh()

      Attachments

        Issue Links

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

          Activity

            People

              jkobus Jarek Kobus
              jkobus Jarek Kobus
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes