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

Crash when following symbol

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • Qt Creator 8.0.0
    • Qt Creator 8.0.0-beta2
    • Editors
    • None
    • Linux/X11
    • 650bc260c6 (qt-creator/qt-creator/8.0) 650bc260c6 (qt-creator/qt-creator/master) 650bc260c6 (qt-creator/qt-creator/qds-3.6) 650bc260c6 (qt-creator/qt-creator/9.0)

    Description

      I've pressed Ctrl and clicked setCodec() link inside qtcprocess.h - the following crash happened:

      Thread 1 (Thread 0x7fa6fee9a800 (LWP 22344)):
      #0  0x00007fa702ac4634 in doActivate<false> (sender=0x55c901ceb050, signal_index=3, argv=0x0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobject.cpp:3805
      #1  0x00007fa702abb963 in QMetaObject::activate (sender=0x55c901ceb050, m=0x7fa68dccca20 <ClangCodeModel::Internal::ClangdFollowSymbol::staticMetaObject>, local_signal_index=0, argv=0x0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobject.cpp:3981
      #2  0x00007fa68d9dc2d7 in ClangCodeModel::Internal::ClangdFollowSymbol::done (this=0x55c901ceb050) at /home/jarek/dev/creator-8-build-63/src/plugins/clangcodemodel/ClangCodeModel_autogen/EWIEGA46WW/moc_clangdfollowsymbol.cpp:138
      #3  0x00007fa68dab7a0a in ClangCodeModel::Internal::ClangdFollowSymbol::Private::handleGotoDefinitionResult (this=0x55c90598ade0) at /home/jarek/dev/creator-8/src/plugins/clangcodemodel/clangdfollowsymbol.cpp:377
      #4  0x00007fa68dab5d0d in operator() (__closure=0x55c90342f8f0, ast=...) at /home/jarek/dev/creator-8/src/plugins/clangcodemodel/clangdfollowsymbol.cpp:181
      #5  0x00007fa68dabafbb in std::__invoke_impl<void, ClangCodeModel::Internal::ClangdFollowSymbol::ClangdFollowSymbol(ClangCodeModel::Internal::ClangdClient*, const QTextCursor&, CppEditor::CppEditorWidget*, TextEditor::TextDocument*, const LinkHandler&, bool)::<lambda(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&)>&, const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&>(std::__invoke_other, struct {...} &) (__f=...) at /usr/include/c++/11/bits/invoke.h:61
      #6  0x00007fa68daba64b in std::__invoke_r<void, ClangCodeModel::Internal::ClangdFollowSymbol::ClangdFollowSymbol(ClangCodeModel::Internal::ClangdClient*, const QTextCursor&, CppEditor::CppEditorWidget*, TextEditor::TextDocument*, const LinkHandler&, bool)::<lambda(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&)>&, const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&>(struct {...} &) (__fn=...) at /usr/include/c++/11/bits/invoke.h:111
      #7  0x00007fa68dab9deb in std::_Function_handler<void(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&), ClangCodeModel::Internal::ClangdFollowSymbol::ClangdFollowSymbol(ClangCodeModel::Internal::ClangdClient*, const QTextCursor&, CppEditor::CppEditorWidget*, TextEditor::TextDocument*, const LinkHandler&, bool)::<lambda(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&)> >::_M_invoke(const std::_Any_data &, const ClangCodeModel::Internal::ClangdAstNode &, const LanguageServerProtocol::MessageId &) (__functor=..., __args#0=..., __args#1=...) at /usr/include/c++/11/bits/std_function.h:290
      #8  0x00007fa68da1001b in std::function<void (ClangCodeModel::Internal::ClangdAstNode const&, LanguageServerProtocol::MessageId const&)>::operator()(ClangCodeModel::Internal::ClangdAstNode const&, LanguageServerProtocol::MessageId const&) const (this=0x55c905f27280, __args#0=..., __args#1=...) at /usr/include/c++/11/bits/std_function.h:590
      #9  0x00007fa68da2defb in operator() (__closure=0x55c905f27220, ast=..., reqId=...) at /home/jarek/dev/creator-8/src/plugins/clangcodemodel/clangdclient.cpp:2521
      #10 0x00007fa68da36191 in std::__invoke_impl<void, ClangCodeModel::Internal::ClangdClient::Private::getAndHandleAst(const TextDocOrFile&, const AstHandler&, ClangCodeModel::Internal::ClangdClient::AstCallbackMode, const LanguageServerProtocol::Range&)::<lambda(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&)>&, const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&>(std::__invoke_other, struct {...} &) (__f=...) at /usr/include/c++/11/bits/invoke.h:61
      #11 0x00007fa68da34dde in std::__invoke_r<void, ClangCodeModel::Internal::ClangdClient::Private::getAndHandleAst(const TextDocOrFile&, const AstHandler&, ClangCodeModel::Internal::ClangdClient::AstCallbackMode, const LanguageServerProtocol::Range&)::<lambda(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&)>&, const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&>(struct {...} &) (__fn=...) at /usr/include/c++/11/bits/invoke.h:111
      #12 0x00007fa68da3274f in std::_Function_handler<void(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&), ClangCodeModel::Internal::ClangdClient::Private::getAndHandleAst(const TextDocOrFile&, const AstHandler&, ClangCodeModel::Internal::ClangdClient::AstCallbackMode, const LanguageServerProtocol::Range&)::<lambda(const ClangCodeModel::Internal::ClangdAstNode&, const LanguageServerProtocol::MessageId&)> >::_M_invoke(const std::_Any_data &, const ClangCodeModel::Internal::ClangdAstNode &, const LanguageServerProtocol::MessageId &) (__functor=..., __args#0=..., __args#1=...) at /usr/include/c++/11/bits/std_function.h:290
      #13 0x00007fa68da1001b in std::function<void (ClangCodeModel::Internal::ClangdAstNode const&, LanguageServerProtocol::MessageId const&)>::operator()(ClangCodeModel::Internal::ClangdAstNode const&, LanguageServerProtocol::MessageId const&) const (this=0x55c905eb6ad0, __args#0=..., __args#1=...) at /usr/include/c++/11/bits/std_function.h:590
      #14 0x00007fa68da09119 in operator()(LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::Response) const (__closure=0x55c905eb6ad0, response=...) at /home/jarek/dev/creator-8/src/plugins/clangcodemodel/clangdast.cpp:410
      #15 0x00007fa68da0a0ec in std::__invoke_impl<void, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::<lambda(LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::Response)>&, LanguageServerProtocol::Response<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t> >(std::__invoke_other, struct {...} &) (__f=...) at /usr/include/c++/11/bits/invoke.h:61
      #16 0x00007fa68da09f60 in std::__invoke_r<void, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::<lambda(LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::Response)>&, LanguageServerProtocol::Response<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t> >(struct {...} &) (__fn=...) at /usr/include/c++/11/bits/invoke.h:111
      #17 0x00007fa68da09af9 in std::_Function_handler<void(LanguageServerProtocol::Response<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t>), ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::<lambda(LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::Response)> >::_M_invoke(const std::_Any_data &, LanguageServerProtocol::Response<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t> &&) (__functor=..., __args#0=...) at /usr/include/c++/11/bits/std_function.h:290
      #18 0x00007fa68da18491 in std::function<void (LanguageServerProtocol::Response<ClangCodeModel::Internal::ClangdAstNode, decltype(nullptr)>)>::operator()(LanguageServerProtocol::Response<ClangCodeModel::Internal::ClangdAstNode, decltype(nullptr)>) const (this=0x55c9064828f0, __args#0=...) at /usr/include/c++/11/bits/std_function.h:590
      #19 0x00007fa68da0a8bf in operator() (__closure=0x55c9064828f0, message=...) at /home/jarek/dev/creator-8/src/libs/languageserverprotocol/jsonrpcmessages.h:389
      #20 0x00007fa68da0b695 in std::__invoke_impl<void, LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::responseHandler() const::<lambda(const LanguageServerProtocol::JsonRpcMessage&)>&, const LanguageServerProtocol::JsonRpcMessage&>(std::__invoke_other, struct {...} &) (__f=...) at /usr/include/c++/11/bits/invoke.h:61
      #21 0x00007fa68da0b508 in std::__invoke_r<void, LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::responseHandler() const::<lambda(const LanguageServerProtocol::JsonRpcMessage&)>&, const LanguageServerProtocol::JsonRpcMessage&>(struct {...} &) (__fn=...) at /usr/include/c++/11/bits/invoke.h:111
      #22 0x00007fa68da0b229 in std::_Function_handler<void(const LanguageServerProtocol::JsonRpcMessage&), LanguageServerProtocol::Request<ClangCodeModel::Internal::ClangdAstNode, std::nullptr_t, ClangCodeModel::Internal::requestAst(LanguageClient::Client*, const Utils::FilePath&, LanguageServerProtocol::Range, const AstHandler&)::AstParams>::responseHandler() const::<lambda(const LanguageServerProtocol::JsonRpcMessage&)> >::_M_invoke(const std::_Any_data &, const LanguageServerProtocol::JsonRpcMessage &) (__functor=..., __args#0=...) at /usr/include/c++/11/bits/std_function.h:290
      #23 0x00007fa6bc92def7 in std::function<void (LanguageServerProtocol::JsonRpcMessage const&)>::operator()(LanguageServerProtocol::JsonRpcMessage const&) const (this=0x7ffc221d6a10, __args#0=...) at /usr/include/c++/11/bits/std_function.h:590
      #24 0x00007fa6bc90950c in LanguageClient::ClientPrivate::handleResponse (this=0x55c904e78720, id=..., message=...) at /home/jarek/dev/creator-8/src/plugins/languageclient/client.cpp:1651
      #25 0x00007fa6bc90865c in LanguageClient::Client::handleMessage (this=0x55c90363c1b0, message=...) at /home/jarek/dev/creator-8/src/plugins/languageclient/client.cpp:1505
      #26 0x00007fa6bc95f24f in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<LanguageServerProtocol::JsonRpcMessage const&>, void, void (LanguageClient::Client::*)(LanguageServerProtocol::JsonRpcMessage const&)>::call (f=(void (LanguageClient::Client::*)(LanguageClient::Client * const, const LanguageServerProtocol::JsonRpcMessage &)) 0x7fa6bc9084f2 <LanguageClient::Client::handleMessage(LanguageServerProtocol::JsonRpcMessage const&)>, o=0x55c90363c1b0, arg=0x7ffc221d6d60) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:171
      #27 0x00007fa6bc953b20 in QtPrivate::FunctionPointer<void (LanguageClient::Client::*)(LanguageServerProtocol::JsonRpcMessage const&)>::call<QtPrivate::List<LanguageServerProtocol::JsonRpcMessage const&>, void> (f=(void (LanguageClient::Client::*)(LanguageClient::Client * const, const LanguageServerProtocol::JsonRpcMessage &)) 0x7fa6bc9084f2 <LanguageClient::Client::handleMessage(LanguageServerProtocol::JsonRpcMessage const&)>, o=0x55c90363c1b0, arg=0x7ffc221d6d60) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:208
      #28 0x00007fa6bc947241 in QtPrivate::QSlotObject<void (LanguageClient::Client::*)(LanguageServerProtocol::JsonRpcMessage const&), QtPrivate::List<LanguageServerProtocol::JsonRpcMessage const&>, void>::impl (which=1, this_=0x55c905129e20, r=0x55c90363c1b0, a=0x7ffc221d6d60, ret=0x0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:419
      #29 0x00007fa702a4bd0b in QtPrivate::QSlotObjectBase::call (this=0x55c905129e20, r=0x55c90363c1b0, a=0x7ffc221d6d60) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:399
      #30 0x00007fa702ac4c84 in doActivate<false> (sender=0x55c905128cb0, signal_index=3, argv=0x7ffc221d6d60) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobject.cpp:3921
      #31 0x00007fa702abb963 in QMetaObject::activate (sender=0x55c905128cb0, m=0x7fa6bcc32f80 <LanguageClient::InterfaceController::staticMetaObject>, local_signal_index=0, argv=0x7ffc221d6d60) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobject.cpp:3981
      #32 0x00007fa6bc90d730 in LanguageClient::InterfaceController::messageReceived (this=0x55c905128cb0, _t1=...) at /home/jarek/dev/creator-8-build-63/src/plugins/languageclient/LanguageClient_autogen/include/client.moc:182
      #33 0x00007fa6bc95df91 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<LanguageServerProtocol::JsonRpcMessage>, void, void (LanguageClient::InterfaceController::*)(LanguageServerProtocol::JsonRpcMessage const&)>::call (f=(void (LanguageClient::InterfaceController::*)(LanguageClient::InterfaceController * const, const LanguageServerProtocol::JsonRpcMessage &)) 0x7fa6bc90d6ce <LanguageClient::InterfaceController::messageReceived(LanguageServerProtocol::JsonRpcMessage const&)>, o=0x55c905128cb0, arg=0x7fa678007b98) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:171
      #34 0x00007fa6bc952c00 in QtPrivate::FunctionPointer<void (LanguageClient::InterfaceController::*)(LanguageServerProtocol::JsonRpcMessage const&)>::call<QtPrivate::List<LanguageServerProtocol::JsonRpcMessage>, void> (f=(void (LanguageClient::InterfaceController::*)(LanguageClient::InterfaceController * const, const LanguageServerProtocol::JsonRpcMessage &)) 0x7fa6bc90d6ce <LanguageClient::InterfaceController::messageReceived(LanguageServerProtocol::JsonRpcMessage const&)>, o=0x55c905128cb0, arg=0x7fa678007b98) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:208
      #35 0x00007fa6bc946705 in QtPrivate::QSlotObject<void (LanguageClient::InterfaceController::*)(LanguageServerProtocol::JsonRpcMessage const&), QtPrivate::List<LanguageServerProtocol::JsonRpcMessage>, void>::impl (which=1, this_=0x55c905128ce0, r=0x55c905128cb0, a=0x7fa678007b98, ret=0x0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:419
      #36 0x00007fa702a4bd0b in QtPrivate::QSlotObjectBase::call (this=0x55c905128ce0, r=0x55c905128cb0, a=0x7fa678007b98) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobjectdefs_impl.h:399
      #37 0x00007fa702ab298b in QMetaCallEvent::placeMetaCall (this=0x7fa678007b50, object=0x55c905128cb0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobject.cpp:624
      #38 0x00007fa702ab3b41 in QObject::event (this=0x55c905128cb0, e=0x7fa678007b50) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qobject.cpp:1356
      #39 0x00007fa704499f7e in QApplicationPrivate::notify_helper (this=0x55c8ff12c770, receiver=0x55c905128cb0, e=0x7fa678007b50) at /home/jarek/dev/qt-63/qtbase/src/widgets/kernel/qapplication.cpp:3350
      #40 0x00007fa704499d70 in QApplication::notify (this=0x7ffc221d7a90, receiver=0x55c905128cb0, e=0x7fa678007b50) at /home/jarek/dev/qt-63/qtbase/src/widgets/kernel/qapplication.cpp:3301
      #41 0x00007fa702a28f1d in QCoreApplication::notifyInternal2 (receiver=0x55c905128cb0, event=0x7fa678007b50) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qcoreapplication.cpp:1067
      #42 0x00007fa702a29abb in QCoreApplication::sendEvent (receiver=0x55c905128cb0, event=0x7fa678007b50) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qcoreapplication.cpp:1483
      #43 0x00007fa702a2a9e7 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55c8ff12f620) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qcoreapplication.cpp:1845
      #44 0x00007fa702a2a2ca in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qcoreapplication.cpp:1704
      #45 0x00007fa702e534a0 in postEventSourceDispatch (s=0x55c8ff19bde0) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:279
      #46 0x00007fa701439d1b in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
      #47 0x00007fa70148e6f8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
      #48 0x00007fa7014373c3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
      #49 0x00007fa702e53d62 in QEventDispatcherGlib::processEvents (this=0x55c8ff19b2d0, flags=...) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:429
      #50 0x00007fa6fdfccb16 in QXcbGlibEventDispatcher::processEvents (this=0x55c8ff19b2d0, flags=...) at /home/jarek/dev/qt-63/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:132
      #51 0x00007fa702a3e9bd in QEventLoop::processEvents (this=0x7ffc221d76a0, flags=...) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qeventloop.cpp:136
      #52 0x00007fa702a3ed2c in QEventLoop::exec (this=0x7ffc221d76a0, flags=...) at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qeventloop.cpp:218
      #53 0x00007fa702a29888 in QCoreApplication::exec () at /home/jarek/dev/qt-63/qtbase/src/corelib/kernel/qcoreapplication.cpp:1388
      #54 0x00007fa7036644ce in QGuiApplication::exec () at /home/jarek/dev/qt-63/qtbase/src/gui/kernel/qguiapplication.cpp:1887
      #55 0x00007fa704496fe1 in QApplication::exec () at /home/jarek/dev/qt-63/qtbase/src/widgets/kernel/qapplication.cpp:2631
      #56 0x000055c8fe98d46c in main (argc=1, argv=0x7ffc221d7d68) at /home/jarek/dev/creator-8/src/app/main.cpp:790
      

      The other busy thread posted in first comment. All other threads (87 in total) are either idle or blocked on wait condition.

      Attachments

        Issue Links

          For Gerrit Dashboard: QTCREATORBUG-27803
          # Subject Branch Project Status CR V

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes