Bug 291347

Summary: KDevelop crashing when analyzing source tree
Product: [Applications] kdevelop Reporter: insomniac
Component: Language Support: CPP (old)Assignee: kdevelop-bugs-null
Status: RESOLVED DUPLICATE    
Severity: crash CC: aleixpol, insomniac
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: 4.2.3   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description insomniac 2012-01-12 09:52:39 UTC
Application: kdevelop (4.0.2 (using KDevPlatform 1.0.2))
KDE Platform Version: 4.5.5 (KDE 4.5.5)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-31-generic i686
Distribution: Ubuntu 10.10

-- Information about the crash:
Here the steps:
I started kdevelop, it found the only project "libX11-1.3.3" (whose sources come from Ubuntu 8.10 libX11 sources), the analyzer started its parsing, then it crashed.

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop.bin), signal: Segmentation fault
[Current thread is 1 (Thread 0xb77ae710 (LWP 4240))]

Thread 9 (Thread 0xb6b40b70 (LWP 4242)):
#0  0x00c39416 in __kernel_vsyscall ()
#1  0x00ab9df6 in __poll (fds=0xb50ff4, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#2  0x01d58a1b in g_poll () from /lib/libglib-2.0.so.0
#3  0x01d4b43c in ?? () from /lib/libglib-2.0.so.0
#4  0x01d4bba7 in g_main_loop_run () from /lib/libglib-2.0.so.0
#5  0x022fe9c4 in ?? () from /usr/lib/libgio-2.0.so.0
#6  0x01d7248f in ?? () from /lib/libglib-2.0.so.0
#7  0x0024acc9 in start_thread (arg=0xb6b40b70) at pthread_create.c:304
#8  0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 8 (Thread 0xb3928b70 (LWP 4243)):
#0  0x00c39416 in __kernel_vsyscall ()
#1  0x0024f884 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:236
#2  0x00ad5df4 in __pthread_cond_timedwait (cond=0x9af69d0, mutex=0x9af69b8, abstime=0xb39282b0) at forward.c:152
#3  0x002fa94f in wait (this=0x9aeff64, mutex=0x9aeff68, time=200000) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=0x9aeff64, mutex=0x9aeff68, time=200000) at thread/qwaitcondition_unix.cpp:160
#5  0x021035b5 in KDevelop::DUChainPrivate::CleanupThread::run (this=0x9aeff58) at ../../language/duchain/duchain.cpp:286
#6  0x002f9df9 in QThreadPrivate::start (arg=0x9aeff58) at thread/qthread_unix.cpp:266
#7  0x0024acc9 in start_thread (arg=0xb3928b70) at pthread_create.c:304
#8  0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 7 (Thread 0xb30aab70 (LWP 4244)):
#0  0x00c39416 in __kernel_vsyscall ()
#1  0x0024f4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00ad5d9d in __pthread_cond_wait (cond=0x9b54908, mutex=0x9b548f0) at forward.c:139
#3  0x002fa9c7 in wait (this=0x9b405a8, mutex=0x9b49cd8, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x9b405a8, mutex=0x9b49cd8, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x02b7b030 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x9b40590, th=0x9b4b740) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#6  0x02b7e7dc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x9b49698, th=0x9b4b740) at ../../../threadweaver/Weaver/WorkingHardState.cpp:80
#7  0x02b7a55b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x9b40590, th=0x9b4b740) at ../../../threadweaver/Weaver/WeaverImpl.cpp:356
#8  0x02b7e8d2 in ThreadWeaver::WorkingHardState::applyForWork (this=0x9b49698, th=0x9b4b740) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#9  0x02b7b533 in ThreadWeaver::WeaverImpl::applyForWork (this=0x9b40590, th=0x9b4b740, previous=0x9b548a8) at ../../../threadweaver/Weaver/WeaverImpl.cpp:351
#10 0x02b7c95e in ThreadWeaver::ThreadRunHelper::run (this=0xb30aa2f4, parent=0x9b40590, th=0x9b4b740) at ../../../threadweaver/Weaver/Thread.cpp:87
#11 0x02b7d07b in ThreadWeaver::Thread::run (this=0x9b4b740) at ../../../threadweaver/Weaver/Thread.cpp:142
#12 0x002f9df9 in QThreadPrivate::start (arg=0x9b4b740) at thread/qthread_unix.cpp:266
#13 0x0024acc9 in start_thread (arg=0xb30aab70) at pthread_create.c:304
#14 0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 6 (Thread 0xb01b5b70 (LWP 4250)):
#0  0x023d9e36 in clock_gettime (clock_id=37609460, tp=0xb01b4fc0) at ../sysdeps/unix/clock_gettime.c:100
#1  0x0035550b in do_gettime () at tools/qelapsedtimer_unix.cpp:105
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:119
#3  0x0042c6e5 in QTimerInfoList::updateCurrentTime (this=0x9db0824) at kernel/qeventdispatcher_unix.cpp:339
#4  0x0042c72a in QTimerInfoList::timerWait (this=0x9db0824, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x0042a7a8 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xb01b50ec) at kernel/qeventdispatcher_glib.cpp:136
#6  0x0042a83d in timerSourcePrepare (source=0x0, timeout=0x23ddff4) at kernel/qeventdispatcher_glib.cpp:169
#7  0x01d4ae6a in g_main_context_prepare () from /lib/libglib-2.0.so.0
#8  0x01d4b279 in ?? () from /lib/libglib-2.0.so.0
#9  0x01d4b848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#10 0x0042a59f in QEventDispatcherGlib::processEvents (this=0x9bd2f10, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#11 0x003fa609 in QEventLoop::processEvents (this=0xb01b52c0, flags=) at kernel/qeventloop.cpp:149
#12 0x003faa8a in QEventLoop::exec (this=0xb01b52c0, flags=...) at kernel/qeventloop.cpp:201
#13 0x002f6b7e in QThread::exec (this=0x9bf2b48) at thread/qthread.cpp:490
#14 0x022008d8 in KDevelop::CompletionWorkerThread::run (this=0x9bf2b48) at ../../language/codecompletion/codecompletionmodel.cpp:81
#15 0x002f9df9 in QThreadPrivate::start (arg=0x9bf2b48) at thread/qthread_unix.cpp:266
#16 0x0024acc9 in start_thread (arg=0xb01b5b70) at pthread_create.c:304
#17 0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 5 (Thread 0xaf9b4b70 (LWP 4251)):
#0  0x01d4ab6f in g_main_context_check () from /lib/libglib-2.0.so.0
#1  0x01d4b45e in ?? () from /lib/libglib-2.0.so.0
#2  0x01d4b848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x0042a59f in QEventDispatcherGlib::processEvents (this=0x9cd9d60, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#4  0x003fa609 in QEventLoop::processEvents (this=0xaf9b42c0, flags=) at kernel/qeventloop.cpp:149
#5  0x003faa8a in QEventLoop::exec (this=0xaf9b42c0, flags=...) at kernel/qeventloop.cpp:201
#6  0x002f6b7e in QThread::exec (this=0x9dad740) at thread/qthread.cpp:490
#7  0x022008d8 in KDevelop::CompletionWorkerThread::run (this=0x9dad740) at ../../language/codecompletion/codecompletionmodel.cpp:81
#8  0x002f9df9 in QThreadPrivate::start (arg=0x9dad740) at thread/qthread_unix.cpp:266
#9  0x0024acc9 in start_thread (arg=0xaf9b4b70) at pthread_create.c:304
#10 0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 4 (Thread 0xaf1b3b70 (LWP 4252)):
#0  0x00c39416 in __kernel_vsyscall ()
#1  0x0024f884 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:236
#2  0x00ad5df4 in __pthread_cond_timedwait (cond=0xaf1b3224, mutex=0xaf1b3254, abstime=0xaf1b32a0) at forward.c:152
#3  0x002f933e in thread_sleep (ti=0x1) at thread/qthread_unix.cpp:416
#4  0x002f9493 in QThread::msleep (msecs=30) at thread/qthread_unix.cpp:442
#5  0x042a9ccb in ?? () from /usr/lib/kde4/kdevcpplanguagesupport.so
#6  0x002f9df9 in QThreadPrivate::start (arg=0x9db1108) at thread/qthread_unix.cpp:266
#7  0x0024acc9 in start_thread (arg=0xaf1b3b70) at pthread_create.c:304
#8  0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 3 (Thread 0xae52db70 (LWP 4255)):
[KCrash Handler]
#7  makeDataPrivate (this=0xa5eccfe, rhs=...) at ../../language/duchain/repositories/itemrepository.h:1044
#8  prepareChange (this=0xa5eccfe, rhs=...) at ../../language/duchain/repositories/itemrepository.h:990
#9  dynamicItemFromIndexSimple (this=0xa5eccfe, rhs=...) at ../../language/duchain/repositories/itemrepository.h:1805
#10 KDevelop::IndexedString::IndexedString (this=0xa5eccfe, rhs=...) at ../../language/duchain/indexedstring.cpp:230
#11 0x07f80953 in void rpp::pp_macro::copyListsFrom<rpp::pp_macro>(rpp::pp_macro const&) () from /usr/lib/libkdev4cpprpp.so
#12 0x07f7eb53 in rpp::pp_macro::pp_macro(rpp::pp_macro const&, bool) () from /usr/lib/libkdev4cpprpp.so
#13 0x07f8b602 in MacroRepositoryItemRequest::createItem(rpp::pp_macro*) const () from /usr/lib/libkdev4cpprpp.so
#14 0x0473be37 in Cpp::MacroIndexConversion::toIndex(rpp::pp_macro const&) const () from /usr/lib/libkdev4cppduchain.so
#15 0x04747066 in ?? () from /usr/lib/libkdev4cppduchain.so
#16 0x0473d926 in Cpp::EnvironmentFile::addDefinedMacro(rpp::pp_macro const&, rpp::pp_macro const*) () from /usr/lib/libkdev4cppduchain.so
#17 0x0476ab95 in CppPreprocessEnvironment::setMacro(rpp::pp_macro*) () from /usr/lib/libkdev4cppduchain.so
#18 0x07f82c30 in rpp::pp::handle_define(rpp::Stream&) () from /usr/lib/libkdev4cpprpp.so
#19 0x07f86b72 in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () from /usr/lib/libkdev4cpprpp.so
#20 0x07f87120 in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () from /usr/lib/libkdev4cpprpp.so
#21 0x07f873a6 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () from /usr/lib/libkdev4cpprpp.so
#22 0x07f87475 in rpp::pp::processFile(QString const&, QByteArray const&) () from /usr/lib/libkdev4cpprpp.so
#23 0x042c5f1a in ?? () from /usr/lib/kde4/kdevcpplanguagesupport.so
#24 0x02b7d904 in ThreadWeaver::JobRunHelper::runTheJob (this=0xae52d1fc, th=0x9efb7e0, job=0xa7286668) at ../../../threadweaver/Weaver/Job.cpp:106
#25 0x02b7dc61 in ThreadWeaver::Job::execute (this=0xa7286668, th=0x9efb7e0) at ../../../threadweaver/Weaver/Job.cpp:135
#26 0x02b7f633 in ThreadWeaver::JobCollectionJobRunner::execute (this=0xa7cd5d00, t=0x9efb7e0) at ../../../threadweaver/Weaver/JobCollection.cpp:82
#27 0x02b8004e in ThreadWeaver::JobCollection::execute (this=0xa72b67e8, t=0x9efb7e0) at ../../../threadweaver/Weaver/JobCollection.cpp:231
#28 0x02b7c92a in ThreadWeaver::ThreadRunHelper::run (this=0xae52d2f4, parent=0x99bdf58, th=0x9efb7e0) at ../../../threadweaver/Weaver/Thread.cpp:95
#29 0x02b7d07b in ThreadWeaver::Thread::run (this=0x9efb7e0) at ../../../threadweaver/Weaver/Thread.cpp:142
#30 0x002f9df9 in QThreadPrivate::start (arg=0x9efb7e0) at thread/qthread_unix.cpp:266
#31 0x0024acc9 in start_thread (arg=0xae52db70) at pthread_create.c:304
#32 0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xadd2cb70 (LWP 4256)):
#0  0x00c39416 in __kernel_vsyscall ()
#1  0x0024f4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00ad5d9d in __pthread_cond_wait (cond=0x9a8dfb0, mutex=0x9a8df98) at forward.c:139
#3  0x002fa9c7 in wait (this=0x99bdf70, mutex=0x99bdb08, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x99bdf70, mutex=0x99bdb08, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x02b7b030 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x99bdf58, th=0x9c916d8) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#6  0x02b7e7dc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x9a8e568, th=0x9c916d8) at ../../../threadweaver/Weaver/WorkingHardState.cpp:80
#7  0x02b7a55b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x99bdf58, th=0x9c916d8) at ../../../threadweaver/Weaver/WeaverImpl.cpp:356
#8  0x02b7e8d2 in ThreadWeaver::WorkingHardState::applyForWork (this=0x9a8e568, th=0x9c916d8) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#9  0x02b7b533 in ThreadWeaver::WeaverImpl::applyForWork (this=0x99bdf58, th=0x9c916d8, previous=0x0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:351
#10 0x02b7e8f1 in ThreadWeaver::WorkingHardState::applyForWork (this=0x9a8e568, th=0x9c916d8) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#11 0x02b7b533 in ThreadWeaver::WeaverImpl::applyForWork (this=0x99bdf58, th=0x9c916d8, previous=0xb622ea18) at ../../../threadweaver/Weaver/WeaverImpl.cpp:351
#12 0x02b7c95e in ThreadWeaver::ThreadRunHelper::run (this=0xadd2c2f4, parent=0x99bdf58, th=0x9c916d8) at ../../../threadweaver/Weaver/Thread.cpp:87
#13 0x02b7d07b in ThreadWeaver::Thread::run (this=0x9c916d8) at ../../../threadweaver/Weaver/Thread.cpp:142
#14 0x002f9df9 in QThreadPrivate::start (arg=0x9c916d8) at thread/qthread_unix.cpp:266
#15 0x0024acc9 in start_thread (arg=0xadd2cb70) at pthread_create.c:304
#16 0x00ac869e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb77ae710 (LWP 4240)):
#0  0x00c39416 in __kernel_vsyscall ()
#1  0x0024f4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00ad5d9d in __pthread_cond_wait (cond=0x9da9f38, mutex=0x9da9f20) at forward.c:139
#3  0x002f8ef2 in QMutexPrivate::wait (this=0x9da9f08, timeout=-1) at thread/qmutex_unix.cpp:84
#4  0x002f45ca in QMutex::lock (this=0x47aa188) at thread/qmutex.cpp:167
#5  0x0473ae1b in ?? () from /usr/lib/libkdev4cppduchain.so
#6  0x02224f6c in Utils::Set::unrefNode (this=0xbff4a9c8, current=<value optimized out>) at ../../language/util/setrepository.cpp:1094
#7  0x0222526f in Utils::Set::unrefNode (this=0xbff4a9c8, current=<value optimized out>) at ../../language/util/setrepository.cpp:1089
#8  0x0222526f in Utils::Set::unrefNode (this=0xbff4a9c8, current=<value optimized out>) at ../../language/util/setrepository.cpp:1089
#9  0x0222526f in Utils::Set::unrefNode (this=0xbff4a9c8, current=<value optimized out>) at ../../language/util/setrepository.cpp:1089
#10 0x0222527e in Utils::Set::unrefNode (this=0xbff4a9c8, current=<value optimized out>) at ../../language/util/setrepository.cpp:1090
#11 0x0222526f in Utils::Set::unrefNode (this=0xbff4a9c8, current=<value optimized out>) at ../../language/util/setrepository.cpp:1089
#12 0x0222569c in Utils::Set::staticUnref (this=0xbff4a9c8) at ../../language/util/setrepository.cpp:1111
#13 0x042cb5c6 in ?? () from /usr/lib/kde4/kdevcpplanguagesupport.so
#14 0x00a2769e in __run_exit_handlers (status=-1074484792, listp=0xb51324, run_list_atexit=true) at exit.c:78
#15 0x00a2770f in exit (status=1) at exit.c:100
#16 0x027f0890 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#17 0x008175ea in KApplication::xioErrhandler (this=0xbff4af90, dpy=0x9806e68) at ../../kdeui/kernel/kapplication.cpp:416
#18 0x00817626 in kde_xio_errhandler (dpy=0x9806e68) at ../../kdeui/kernel/kapplication.cpp:125
#19 0x01c26c36 in _XIOError (dpy=0x9) at ../../src/XlibInt.c:3138
#20 0x01c2ea8a in process_responses (dpy=0x9806e68, wait_for_first_event=<value optimized out>, current_error=0x0, current_request=0) at ../../src/xcb_io.c:247
#21 0x01c2f406 in _XEventsQueued (dpy=0x9806e68, mode=2) at ../../src/xcb_io.c:263
#22 0x01c17b0b in XEventsQueued (dpy=0x9806e68, mode=2) at ../../src/Pending.c:43
#23 0x011e6db5 in x11EventSourceCheck (s=0x9805a00) at kernel/qguieventdispatcher_glib.cpp:87
#24 0x01d4ab39 in g_main_context_check () from /lib/libglib-2.0.so.0
#25 0x01d4b45e in ?? () from /lib/libglib-2.0.so.0
#26 0x01d4b848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#27 0x0042a565 in QEventDispatcherGlib::processEvents (this=0x97e3a18, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#28 0x011e6be5 in QGuiEventDispatcherGlib::processEvents (this=0x97e3a18, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#29 0x003fa609 in QEventLoop::processEvents (this=0xbff4ae44, flags=) at kernel/qeventloop.cpp:149
#30 0x003faa8a in QEventLoop::exec (this=0xbff4ae44, flags=...) at kernel/qeventloop.cpp:201
#31 0x003ff00f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#32 0x01123e07 in QApplication::exec () at kernel/qapplication.cpp:3672
#33 0x0804fe00 in _start ()

Possible duplicates by query: bug 282551, bug 281520, bug 264623.

Reported using DrKonqi
Comment 1 insomniac 2012-01-12 10:28:25 UTC
I wrote that libX11 sources are from Ubuntu 8.10. It's an error, they are from Ubuntu 10.10 sources. Sorry for the mistake.
Comment 2 Kevin Funk 2012-12-22 21:12:55 UTC

*** This bug has been marked as a duplicate of bug 264623 ***