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

          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:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes