Bug 194111 - KDevelop4 Crash when typing and then quickly backspacing
Summary: KDevelop4 Crash when typing and then quickly backspacing
Status: RESOLVED FIXED
Alias: None
Product: kate
Classification: Applications
Component: part (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-26 02:48 UTC by Andrew Stromme
Modified: 2009-05-31 16:29 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
gdb with bt full backtrace of the crash (9.93 KB, text/plain)
2009-05-30 19:43 UTC, Oliver Putz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Stromme 2009-05-26 02:48:07 UTC
Application that crashed: kdevelop
Version of the application: 3.9.93 (using KDevPlatform 0.9.93)
KDE Version: 4.2.87 (KDE 4.2.87 (KDE 4.3 >= 20090519))
Qt Version: 4.5.1
Operating System: Linux 2.6.28-11-generic x86_64
Distribution: Ubuntu 9.04

What I was doing when the application crashed:
It's sometimes hard to reproduce, but the following seems to trigger it:

Have a document loaded with the DUChain active
Start typing something where command completion would be in effect
After finishing a subword, quickly press backspace (i.e. a misspell, etc...)

*crash*

 -- Backtrace:
Application: KDevelop (kdevelop), signal: Aborted
[Current thread is 0 (LWP 17410)]

Thread 7 (Thread 0x7fdeb73fa950 (LWP 17412)):
#0  0x00007fdec36e9f4b in read () from /lib/libc.so.6
#1  0x00007fdec3685360 in _IO_file_xsgetn (fp=0x34035d0, data=<value optimized out>, n=4096) at fileops.c:1457
#2  0x00007fdec367ad5f in _IO_fread (buf=0x4c940a8, size=1, count=4096, fp=0xffffffffffffffff) at iofread.c:44
#3  0x00007fdec521d7a5 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#4  0x00007fdec5223692 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#5  0x00007fdec51e27db in QFile::readData () from /opt/project-neon/lib/libQtCore.so.4
#6  0x00007fdec51e76f1 in QIODevice::read () from /opt/project-neon/lib/libQtCore.so.4
#7  0x00007fdec1fe0ecf in KDevelop::TopDUContextDynamicData::loadData (this=0x20eb7f0) at /home/astromme/Projects/KDE/kdevplatform/language/duchain/topducontextdynamicdata.cpp:258
#8  0x00007fdec1fe2e65 in KDevelop::TopDUContextDynamicData::store (this=0x20eb7f0) at /home/astromme/Projects/KDE/kdevplatform/language/duchain/topducontextdynamicdata.cpp:428
#9  0x00007fdec1fb1346 in KDevelop::DUChainPrivate::doMoreCleanup (this=0x1808ae0, retries=1, needLockRepository=true) at /home/astromme/Projects/KDE/kdevplatform/language/duchain/duchain.cpp:690
#10 0x00007fdec1fb1d14 in KDevelop::DUChainPrivate::CleanupThread::run (this=0x18568c0) at /home/astromme/Projects/KDE/kdevplatform/language/duchain/duchain.cpp:288
#11 0x00007fdec51641b9 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#12 0x00007fdec4eef3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#13 0x00007fdec36f7fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fdeab135950 (LWP 17458)):
#0  0x00007fffd05aa6dc in clock_gettime ()
#1  0x00007fdebec3c0ef in *__GI_clock_gettime (clock_id=1, tp=0x7fdeab134d40) at ../sysdeps/unix/clock_gettime.c:100
#2  0x00007fdec526fc0d in ?? () from /opt/project-neon/lib/libQtCore.so.4
#3  0x00007fdec526fe01 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#4  0x00007fdec52714b3 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#5  0x00007fdec526e82c in ?? () from /opt/project-neon/lib/libQtCore.so.4
#6  0x00007fdebe9b01e2 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#7  0x00007fdebe9b05ff in ?? () from /usr/lib/libglib-2.0.so.0
#8  0x00007fdebe9b0a7c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#9  0x00007fdec526e67e in QEventDispatcherGlib::processEvents () from /opt/project-neon/lib/libQtCore.so.4
#10 0x00007fdec5244d72 in QEventLoop::processEvents () from /opt/project-neon/lib/libQtCore.so.4
#11 0x00007fdec5244f05 in QEventLoop::exec () from /opt/project-neon/lib/libQtCore.so.4
#12 0x00007fdec5160d9c in QThread::exec () from /opt/project-neon/lib/libQtCore.so.4
#13 0x00007fdec20ac32d in KDevelop::CompletionWorkerThread::run (this=0x26ad490) at /home/astromme/Projects/KDE/kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#14 0x00007fdec51641b9 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#15 0x00007fdec4eef3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#16 0x00007fdec36f7fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fdeaa934950 (LWP 17459)):
#0  0x00007fffd05aa6dc in clock_gettime ()
#1  0x00007fdebec3c0ef in *__GI_clock_gettime (clock_id=1, tp=0x7fdeaa933d40) at ../sysdeps/unix/clock_gettime.c:100
#2  0x00007fdec526fc0d in ?? () from /opt/project-neon/lib/libQtCore.so.4
#3  0x00007fdec526fe01 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#4  0x00007fdec52714b3 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#5  0x00007fdec526e82c in ?? () from /opt/project-neon/lib/libQtCore.so.4
#6  0x00007fdebe9b01e2 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#7  0x00007fdebe9b05ff in ?? () from /usr/lib/libglib-2.0.so.0
#8  0x00007fdebe9b0a7c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#9  0x00007fdec526e67e in QEventDispatcherGlib::processEvents () from /opt/project-neon/lib/libQtCore.so.4
#10 0x00007fdec5244d72 in QEventLoop::processEvents () from /opt/project-neon/lib/libQtCore.so.4
#11 0x00007fdec5244f05 in QEventLoop::exec () from /opt/project-neon/lib/libQtCore.so.4
#12 0x00007fdec5160d9c in QThread::exec () from /opt/project-neon/lib/libQtCore.so.4
#13 0x00007fdec20ac32d in KDevelop::CompletionWorkerThread::run (this=0x26ae270) at /home/astromme/Projects/KDE/kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#14 0x00007fdec51641b9 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#15 0x00007fdec4eef3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#16 0x00007fdec36f7fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fdeaa133950 (LWP 17466)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:217
#1  0x00007fdec5163695 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#2  0x00007fdec51637fe in QThread::msleep () from /opt/project-neon/lib/libQtCore.so.4
#3  0x00007fdeac640eb2 in UIBlockTester::UIBlockTesterThread::run (this=0x283e220) at /home/astromme/Projects/KDE/kdevelop/languages/cpp/cpplanguagesupport.cpp:965
#4  0x00007fdec51641b9 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#5  0x00007fdec4eef3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#6  0x00007fdec36f7fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fdea5d25950 (LWP 17484)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fdec5164d85 in QWaitCondition::wait () from /opt/project-neon/lib/libQtCore.so.4
#2  0x00007fdec68c30e4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=<value optimized out>, th=0x371eba0)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/WeaverImpl.cpp:365
#3  0x00007fdec68c6dc0 in ThreadWeaver::WorkingHardState::applyForWork (this=0x167fac0, th=0x371eba0)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/WorkingHardState.cpp:71
#4  0x00007fdec68c5534 in ThreadWeaver::ThreadRunHelper::run (this=0x7fdea5d24ff0, parent=0x1691ac0, th=0x371eba0)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/Thread.cpp:87
#5  0x00007fdec68c5635 in ThreadWeaver::Thread::run (this=0x371eba0) at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/Thread.cpp:142
#6  0x00007fdec51641b9 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#7  0x00007fdec4eef3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#8  0x00007fdec36f7fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#9  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fdea5524950 (LWP 17485)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fdec5164d85 in QWaitCondition::wait () from /opt/project-neon/lib/libQtCore.so.4
#2  0x00007fdec68c30e4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=<value optimized out>, th=0x3258630)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/WeaverImpl.cpp:365
#3  0x00007fdec68c6dc0 in ThreadWeaver::WorkingHardState::applyForWork (this=0x167fac0, th=0x3258630)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/WorkingHardState.cpp:71
#4  0x00007fdec68c6dd9 in ThreadWeaver::WorkingHardState::applyForWork (this=0x167fac0, th=0x3258630)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/WorkingHardState.cpp:74
#5  0x00007fdec68c6dd9 in ThreadWeaver::WorkingHardState::applyForWork (this=0x167fac0, th=0x3258630)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fdec68c5534 in ThreadWeaver::ThreadRunHelper::run (this=0x7fdea5523ff0, parent=0x1691ac0, th=0x3258630)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/Thread.cpp:87
#7  0x00007fdec68c5635 in ThreadWeaver::Thread::run (this=0x3258630) at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/threadweaver/Weaver/Thread.cpp:142
#8  0x00007fdec51641b9 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#9  0x00007fdec4eef3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#10 0x00007fdec36f7fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fdec83c7750 (LWP 17410)):
[KCrash Handler]
#5  0x00007fdec3644fb5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#6  0x00007fdec3646bc3 in *__GI_abort () at abort.c:88
#7  0x00007fdec515b825 in qt_message_output () from /opt/project-neon/lib/libQtCore.so.4
#8  0x00007fdec515b940 in qFatal () from /opt/project-neon/lib/libQtCore.so.4
#9  0x00007fdec52403f0 in QAbstractItemModel::beginInsertRows () from /opt/project-neon/lib/libQtCore.so.4
#10 0x00007fdea9588c9e in KateCompletionModel::addRows (this=0x3d01ec0, g=<value optimized out>, filtered=@0x7fffd0406b50, startRow=-2, newItems=@0x7fffd0406bb0, notify=true)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/kate/completion/katecompletionmodel.cpp:1254
#11 0x00007fdea9589831 in KateCompletionModel::changeCompletions (this=0x3d01ec0, g=0x37a3100, changeType=KateCompletionModel::Change)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/kate/completion/katecompletionmodel.cpp:1084
#12 0x00007fdea958b5f7 in KateCompletionModel::setCurrentCompletion (this=0x3d01ec0, model=0x26ad1e0, completion=@0x7fffd0406d90)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/kate/completion/katecompletionmodel.cpp:937
#13 0x00007fdea958226a in KateCompletionWidget::cursorPositionChanged (this=0x4ec5f10) at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/kate/completion/katecompletionwidget.cpp:650
#14 0x00007fdea9582f4d in KateCompletionWidget::qt_metacall (this=0x4ec5f10, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x59e1c50)
    at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/obj-x86_64-linux-gnu/kate/katecompletionwidget.moc:127
#15 0x00007fdec52567e1 in QObject::event () from /opt/project-neon/lib/libQtCore.so.4
#16 0x00007fdec432889c in QWidget::event () from /opt/project-neon/lib/libQtGui.so.4
#17 0x00007fdec4691a5b in QFrame::event () from /opt/project-neon/lib/libQtGui.so.4
#18 0x00007fdec42d56bd in QApplicationPrivate::notify_helper () from /opt/project-neon/lib/libQtGui.so.4
#19 0x00007fdec42de36e in QApplication::notify () from /opt/project-neon/lib/libQtGui.so.4
#20 0x00007fdec597a831 in KApplication::notify (this=0x7fffd0407a00, receiver=0x4ec5f10, event=0x58bdf00) at /build/buildd/kde-nightly-kdelibs-20090522+svn971606/kdeui/kernel/kapplication.cpp:302
#21 0x00007fdec524610c in QCoreApplication::notifyInternal () from /opt/project-neon/lib/libQtCore.so.4
#22 0x00007fdec5249936 in QCoreApplicationPrivate::sendPostedEvents () from /opt/project-neon/lib/libQtCore.so.4
#23 0x00007fdec526e923 in ?? () from /opt/project-neon/lib/libQtCore.so.4
#24 0x00007fdebe9ad20a in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#25 0x00007fdebe9b08e0 in ?? () from /usr/lib/libglib-2.0.so.0
#26 0x00007fdebe9b0a7c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#27 0x00007fdec526e65f in QEventDispatcherGlib::processEvents () from /opt/project-neon/lib/libQtCore.so.4
#28 0x00007fdec43646ff in ?? () from /opt/project-neon/lib/libQtGui.so.4
#29 0x00007fdec5244d72 in QEventLoop::processEvents () from /opt/project-neon/lib/libQtCore.so.4
#30 0x00007fdec5244f05 in QEventLoop::exec () from /opt/project-neon/lib/libQtCore.so.4
#31 0x00007fdec5249bee in QCoreApplication::exec () from /opt/project-neon/lib/libQtCore.so.4
#32 0x00000000004076a2 in main (argc=1, argv=0x7fffd0408b28) at /home/astromme/Projects/KDE/kdevelop/app/main.cpp:172
Comment 1 Oliver Putz 2009-05-30 15:34:49 UTC
As I just stumbled across the same bug: In case it helps, here is another backtrace with debugging symbols for Qt. (KDE-4.2.3)


#0  0x00007f45e3209235 in raise () from /lib/libc.so.6
#1  0x00007f45e320a753 in abort () from /lib/libc.so.6
#2  0x00007f45e4c0c815 in qt_message_output (msgType=QtFatalMsg, buf=<value optimized out>) at global/qglobal.cpp:2108
#3  0x00007f45e4c0c937 in qFatal (msg=<value optimized out>) at global/qglobal.cpp:2309
#4  0x00007f45e4ce9940 in QAbstractItemModel::beginInsertRows (this=0x24ead70, parent=@0x7fffefb0a9b0, first=-3, last=-2) at kernel/qabstractitemmodel.cpp:2076
#5  0x00007f45d5cb2077 in KateCompletionModel::addRows (this=0x24ead70, g=<value optimized out>, filtered=@0x7fffefb0aa80, startRow=-3, newItems=@0x7fffefb0aae0, notify=true)
    at /var/tmp/portage/kde-base/kdelibs-4.2.3/work/kdelibs-4.2.3/kate/completion/katecompletionmodel.cpp:1252
#6  0x00007f45d5cb2be4 in KateCompletionModel::changeCompletions (this=0x24ead70, g=0x4e26360, changeType=KateCompletionModel::Change)
    at /var/tmp/portage/kde-base/kdelibs-4.2.3/work/kdelibs-4.2.3/kate/completion/katecompletionmodel.cpp:1107
#7  0x00007f45d5cb4613 in KateCompletionModel::setCurrentCompletion (this=0x24ead70, model=0x1935c30, completion=@0x7fffefb0ac80)
    at /var/tmp/portage/kde-base/kdelibs-4.2.3/work/kdelibs-4.2.3/kate/completion/katecompletionmodel.cpp:940
#8  0x00007f45d5cadf8a in KateCompletionWidget::cursorPositionChanged (this=0x24eaa00) at /var/tmp/portage/kde-base/kdelibs-4.2.3/work/kdelibs-4.2.3/kate/completion/katecompletionwidget.cpp:588
#9  0x00007f45d5caf326 in KateCompletionWidget::qt_metacall (this=0x24eaa00, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x4fb82e0)
    at /var/tmp/portage/kde-base/kdelibs-4.2.3/work/kdelibs-4.2.3_build/kate/katecompletionwidget.moc:121
#10 0x00007f45e4d0173e in QObject::event (this=0x24eaa00, e=0x4e422a0) at kernel/qobject.cpp:1149
#11 0x00007f45e3eb7bec in QWidget::event (this=0x24eaa00, event=0x4e422a0) at kernel/qwidget.cpp:7557
#12 0x00007f45e3e65a2d in QApplicationPrivate::notify_helper (this=0xcb67b0, receiver=0x24eaa00, e=0x4e422a0) at kernel/qapplication.cpp:3809
#13 0x00007f45e3e6cd8e in QApplication::notify (this=0x7fffefb0b820, receiver=0x24eaa00, e=0x4e422a0) at kernel/qapplication.cpp:3774
#14 0x00007f45e53edf84 in KApplication::notify (this=0x7fffefb0b820, receiver=0x24eaa00, event=0x4e422a0) at /var/tmp/portage/kde-base/kdelibs-4.2.3/work/kdelibs-4.2.3/kdeui/kernel/kapplication.cpp:307
#15 0x00007f45e4cf2be0 in QCoreApplication::notifyInternal (this=0x7fffefb0b820, receiver=0x24eaa00, event=0x4e422a0) at kernel/qcoreapplication.cpp:589
#16 0x00007f45e4cf6493 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x60e260) at kernel/qcoreapplication.h:215
#17 0x00007f45e4d19de3 in postEventSourceDispatch (s=<value optimized out>) at kernel/qcoreapplication.h:220
#18 0x00007f45de5d8614 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#19 0x00007f45de5da4d7 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#20 0x00007f45de5da5bd in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#21 0x00007f45e4d19b1f in QEventDispatcherGlib::processEvents (this=0xcb6990, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:325
#22 0x00007f45e3eebe1f in QGuiEventDispatcherGlib::processEvents (this=0x27b8, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#23 0x00007f45e4cf1812 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -273631520}) at kernel/qeventloop.cpp:149
#24 0x00007f45e4cf19a5 in QEventLoop::exec (this=0x7fffefb0b720, flags={i = -273631440}) at kernel/qeventloop.cpp:196
#25 0x00007f45e4cf6747 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:851
#26 0x0000000000406f8d in main (argc=1, argv=0x7fffefb0c7b8) at /var/tmp/portage/dev-util/kdevelop-3.9.91/work/kdevelop-3.9.91/src/main.cpp:195
Comment 2 Oliver Putz 2009-05-30 19:43:32 UTC
Created attachment 34130 [details]
gdb with bt full backtrace of the crash

As this crash happens quite frequently for me, I just ran kdevelop inside a gdb instance to get a yet more detailed backtrace: Long story short: In case anyone is interested: I attached a "bt full" backtrace from the crash.
Comment 3 David Nolden 2009-05-31 16:29:16 UTC
Fixed in r975894, and backported to KDE 4.2