Bug 364924 - Kdevelop crashes when editing code [Cpp::getMatchQuality, KDevelop::AbstractType::indexed]
Summary: Kdevelop crashes when editing code [Cpp::getMatchQuality, KDevelop::AbstractT...
Status: RESOLVED WORKSFORME
Alias: None
Product: kdevelop
Classification: Applications
Component: general (show other bugs)
Version: 4.7.3
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords: drkonqi
: 366804 367819 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-06-30 08:52 UTC by fantaz
Modified: 2018-11-01 18:41 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (10.07 KB, text/plain)
2016-10-04 13:27 UTC, Robert Ikanov
Details
New crash information added by DrKonqi (11.32 KB, text/plain)
2016-10-06 07:37 UTC, Robert Ikanov
Details
New crash information added by DrKonqi (10.36 KB, text/plain)
2016-10-27 19:25 UTC, Matthias Fuchs
Details

Note You need to log in before you can comment on or make changes to this bug.
Description fantaz 2016-06-30 08:52:01 UTC
Application: kdevelop (4.7.3)
KDE Platform Version: 4.14.21
Qt Version: 4.8.7
Operating System: Linux 4.6.2-1-default x86_64
Distribution: "openSUSE Tumbleweed (20160626) (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:

The Kdevelop 4.7.3 is not vanilla version, since I'm using patched version installed from the Tumbleweed repository. Nevertheless, the Kdevelop crashes every couple of minutes when I'm in the middle of code editing.

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f7260008900 (LWP 1096))]

Thread 11 (Thread 0x7f7242b3f700 (LWP 1097)):
#0  0x00007f725a1e309f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7259eabe0a in  () at /usr/lib64/libQtScript.so.4
#2  0x00007f7259eabe39 in  () at /usr/lib64/libQtScript.so.4
#3  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7f71c1cf5700 (LWP 1098)):
#0  0x00007f725a1e3448 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f725cc496f4 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007f725b52d3ae in KDevelop::DUChainPrivate::CleanupThread::run() () at /usr/lib64/libkdevplatformlanguage.so.8
#3  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#4  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#5  0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7f71b6ba0700 (LWP 1099)):
#0  0x00007f72567915b0 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f7256791f7b in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f725679216c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f725cd8982e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007f725cd57b8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007f725cd57ef5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007f725cc468d9 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#8  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f71a640e700 (LWP 1106)):
#0  0x00007f725c57da1d in poll () at /lib64/libc.so.6
#1  0x00007f7256792056 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f725679216c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f725cd8982e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007f725cd57b8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007f725cd57ef5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007f725cc468d9 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#8  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f7193b38700 (LWP 1110)):
#0  0x00007f72567d60c4 in g_mutex_unlock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f725679204a in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f725679216c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f725cd8982e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007f725cd57b8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007f725cd57ef5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007f725cc468d9 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007f725cd37973 in  () at /usr/lib64/libQtCore.so.4
#8  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#9  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f7194339700 (LWP 1120)):
#0  0x00007f725a1e309f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f725cc49716 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007f7252548482 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () at /usr/lib64/libthreadweaver.so.4
#3  0x00007f725254a8f3 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () at /usr/lib64/libthreadweaver.so.4
#4  0x00007f725254a90c in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () at /usr/lib64/libthreadweaver.so.4
#5  0x00007f725254952d in ThreadWeaver::Thread::run() () at /usr/lib64/libthreadweaver.so.4
#6  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#7  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f719f4e6700 (LWP 1121)):
#0  0x00007f725c556bcd in nanosleep () at /lib64/libc.so.6
#1  0x00007f725c57f864 in usleep () at /lib64/libc.so.6
#2  0x00007f725b56c65a in KDevelop::DUChainLock::lockForWrite(unsigned int) () at /usr/lib64/libkdevplatformlanguage.so.8
#3  0x00007f725b56c83c in KDevelop::DUChainWriteLocker::lock() () at /usr/lib64/libkdevplatformlanguage.so.8
#4  0x00007f719dac7d71 in KDevelop::AbstractUseBuilder<Python::Ast, Python::Identifier, Python::ContextBuilder>::closeContext() () at /usr/lib64/libkdev4pythonduchain.so
#5  0x00007f719daabf0d in Python::ContextBuilder::visitClassDefinition(Python::ClassDefinitionAst*) () at /usr/lib64/libkdev4pythonduchain.so
#6  0x00007f71aeddcf0c in Python::AstDefaultVisitor::visitCode(Python::CodeAst*) () at /usr/lib64/libkdev4pythonparser.so
#7  0x00007f719daac146 in Python::ContextBuilder::visitCode(Python::CodeAst*) () at /usr/lib64/libkdev4pythonduchain.so
#8  0x00007f71c2133f7c in Python::ParseJob::run() () at /usr/lib64/kde4/kdevpythonlanguagesupport.so
#9  0x00007f7252549eaa in ThreadWeaver::JobRunHelper::runTheJob(ThreadWeaver::Thread*, ThreadWeaver::Job*) () at /usr/lib64/libthreadweaver.so.4
#10 0x00007f725254a040 in ThreadWeaver::Job::execute(ThreadWeaver::Thread*) () at /usr/lib64/libthreadweaver.so.4
#11 0x00007f72525495cb in ThreadWeaver::Thread::run() () at /usr/lib64/libthreadweaver.so.4
#12 0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#13 0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#14 0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f719ece5700 (LWP 1122)):
#0  0x00007f725c579a7d in read () at /lib64/libc.so.6
#1  0x00007f72567d4d00 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7256791b26 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f7256791ff4 in  () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f725679216c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f725cd8982e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007f725cd57b8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#7  0x00007f725cd57ef5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#8  0x00007f725cc468d9 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#9  0x00007f725cd37973 in  () at /usr/lib64/libQtCore.so.4
#10 0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#11 0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f719e4e4700 (LWP 1123)):
#0  0x00007f725a1e3448 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f725cc496f4 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007f725cc3c677 in  () at /usr/lib64/libQtCore.so.4
#3  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#4  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#5  0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f719da4f700 (LWP 1270)):
#0  0x00007f72567d60a0 in g_mutex_lock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f7256791bd6 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f72567920c0 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f725679216c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f725cd8982e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007f725cd57b8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007f725cd57ef5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#7  0x00007f725cc468d9 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#8  0x00007f725cc491aa in  () at /usr/lib64/libQtCore.so.4
#9  0x00007f725a1dd474 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f725c5863ed in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f7260008900 (LWP 1096)):
[KCrash Handler]
#6  0x00007f725b5e34fc in KDevelop::AbstractType::indexed() const () at /usr/lib64/libkdevplatformlanguage.so.8
#7  0x00007f71a6c72e0f in Cpp::getMatchQuality(Cpp::CodeCompletionContext*, KDevelop::Declaration const*, KDevelop::TopDUContext*) () at /usr/lib64/kde4/kdevcpplanguagesupport.so
#8  0x00007f71a6c73bf2 in Cpp::NormalDeclarationCompletionItem::data(QModelIndex const&, int, KDevelop::CodeCompletionModel const*) const () at /usr/lib64/kde4/kdevcpplanguagesupport.so
#9  0x00007f725b6300cd in KDevelop::CodeCompletionModel::data(QModelIndex const&, int) const () at /usr/lib64/libkdevplatformlanguage.so.8
#10 0x00007f71adf59909 in KateCompletionModel::contextMatchQuality(QPair<KTextEditor::CodeCompletionModel*, QModelIndex> const&) const () at /usr/lib64/libkatepartinterfaces.so.4
#11 0x00007f71adf5ee91 in KateCompletionModel::updateBestMatches() () at /usr/lib64/libkatepartinterfaces.so.4
#12 0x00007f71adf61941 in KateCompletionModel::createGroups() () at /usr/lib64/libkatepartinterfaces.so.4
#13 0x00007f725cd6d5c0 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#14 0x00007f725b62dca8 in KDevelop::CodeCompletionModel::foundDeclarations(QList<KSharedPtr<KDevelop::CompletionTreeElement> >, KSharedPtr<KDevelop::CodeCompletionContext>) () at /usr/lib64/libkdevplatformlanguage.so.8
#15 0x00007f71a6c55790 in Cpp::CodeCompletionModel::foundDeclarations(QList<KSharedPtr<KDevelop::CompletionTreeElement> >, KSharedPtr<KDevelop::CodeCompletionContext>) () at /usr/lib64/kde4/kdevcpplanguagesupport.so
#16 0x00007f725b62d51a in  () at /usr/lib64/libkdevplatformlanguage.so.8
#17 0x00007f725cd732e1 in QObject::event(QEvent*) () at /usr/lib64/libQtCore.so.4
#18 0x00007f725d29911c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#19 0x00007f725d2a001c in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#20 0x00007f725e80622a in KApplication::notify(QObject*, QEvent*) () at /usr/lib64/libkdeui.so.5
#21 0x00007f725cd592bd in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQtCore.so.4
#22 0x00007f725cd5c926 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQtCore.so.4
#23 0x00007f725cd8969e in  () at /usr/lib64/libQtCore.so.4
#24 0x00007f7256791e57 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#25 0x00007f72567920c0 in  () at /usr/lib64/libglib-2.0.so.0
#26 0x00007f725679216c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#27 0x00007f725cd8980e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#28 0x00007f725d341e36 in  () at /usr/lib64/libQtGui.so.4
#29 0x00007f725cd57b8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#30 0x00007f725cd57ef5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#31 0x00007f725cd5dae9 in QCoreApplication::exec() () at /usr/lib64/libQtCore.so.4
#32 0x0000000000415223 in main ()

Reported using DrKonqi
Comment 1 Kevin Funk 2016-08-20 14:40:33 UTC
*** Bug 366804 has been marked as a duplicate of this bug. ***
Comment 2 Kevin Funk 2016-08-25 21:19:34 UTC
*** Bug 367819 has been marked as a duplicate of this bug. ***
Comment 3 Robert Ikanov 2016-10-04 13:27:31 UTC
Created attachment 101409 [details]
New crash information added by DrKonqi

kdevelop (4.7.3) on KDE Platform 4.14.24 using Qt 4.8.7

- What I was doing when the application crashed:

Typing a variable name and Kdevelop crashed right before offering completion.

-- Backtrace (Reduced):
#6  0x00007f5841d1566c in KDevelop::AbstractType::indexed() const () at /usr/lib64/libkdevplatformlanguage.so.8
#7  0x00007f578f301eff in Cpp::getMatchQuality(Cpp::CodeCompletionContext*, KDevelop::Declaration const*, KDevelop::TopDUContext*) (context=<optimized out>, decl=0x7f5771646220, top=0x7f577004b740) at /usr/src/debug/kdevelop-4.7.3/languages/cpp/codecompletion/item.cpp:114
#8  0x00007f578f30307d in Cpp::NormalDeclarationCompletionItem::data(QModelIndex const&, int, KDevelop::CodeCompletionModel const*) const (this=0x7f57880569c0, index=..., role=<optimized out>, model=0x347e240) at /usr/src/debug/kdevelop-4.7.3/languages/cpp/codecompletion/item.cpp:538
#9  0x00007f5841d6227d in KDevelop::CodeCompletionModel::data(QModelIndex const&, int) const () at /usr/lib64/libkdevplatformlanguage.so.8
#10 0x00007f5796377ab9 in KateCompletionModel::contextMatchQuality(QPair<KTextEditor::CodeCompletionModel*, QModelIndex> const&) const () at /usr/lib64/libkatepartinterfaces.so.4
Comment 4 Robert Ikanov 2016-10-06 07:37:50 UTC
Created attachment 101442 [details]
New crash information added by DrKonqi

kdevelop (4.7.3) on KDE Platform 4.14.24 using Qt 4.8.7

- What I was doing when the application crashed:

I've just typed a variable name and the automatic word-completion crashed at the last letter.

The error occurs in every case, the Kdevelop IDE is utterly unusable.

-- Backtrace (Reduced):
#6  0x00007f66c83d766c in KDevelop::AbstractType::indexed() const () at /usr/lib64/libkdevplatformlanguage.so.8
#7  0x00007f6615932eff in Cpp::getMatchQuality(Cpp::CodeCompletionContext*, KDevelop::Declaration const*, KDevelop::TopDUContext*) (context=<optimized out>, decl=0x7f65f99125b0, top=0x7f65f404b4a0) at /usr/src/debug/kdevelop-4.7.3/languages/cpp/codecompletion/item.cpp:114
#8  0x00007f661593407d in Cpp::NormalDeclarationCompletionItem::data(QModelIndex const&, int, KDevelop::CodeCompletionModel const*) const (this=0x7f6610003eb0, index=..., role=<optimized out>, model=0x3b91cb0) at /usr/src/debug/kdevelop-4.7.3/languages/cpp/codecompletion/item.cpp:538
#9  0x00007f66c842427d in KDevelop::CodeCompletionModel::data(QModelIndex const&, int) const () at /usr/lib64/libkdevplatformlanguage.so.8
#10 0x00007f661cc14ab9 in KateCompletionModel::contextMatchQuality(QPair<KTextEditor::CodeCompletionModel*, QModelIndex> const&) const () at /usr/lib64/libkatepartinterfaces.so.4
Comment 5 Matthias Fuchs 2016-10-27 19:25:59 UTC
Created attachment 101840 [details]
New crash information added by DrKonqi

kdevelop (4.7.3) on KDE Platform 4.14.25 using Qt 4.8.7

- What I was doing when the application crashed:

I edited code and Kdevelop crashed just before I expected the auto completion to propose an enum name. The crash can be reproduced by entering the same text at the same file at the same location.

-- Backtrace (Reduced):
#6  0x00007f69f308f67c in KDevelop::AbstractType::indexed() const () at /usr/lib64/libkdevplatformlanguage.so.8
#7  0x00007f6940bc6eff in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so
#8  0x00007f6940bc807d in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so
#9  0x00007f69f30dc28d in KDevelop::CodeCompletionModel::data(QModelIndex const&, int) const () at /usr/lib64/libkdevplatformlanguage.so.8
#10 0x00007f6943bbeab9 in KateCompletionModel::contextMatchQuality(QPair<KTextEditor::CodeCompletionModel*, QModelIndex> const&) const () at /usr/lib64/libkatepartinterfaces.so.4
Comment 6 Andrew Crouthamel 2018-11-01 13:53:24 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 7 fantaz 2018-11-01 16:34:31 UTC
Sorry, no. I'm not using this kdevelop version anymore.
Comment 8 Andrew Crouthamel 2018-11-01 18:41:53 UTC
Thanks for the update!