Created attachment 62602 [details] Simple file to reproduce the crash Version: git master (using KDE 4.7.0) OS: Linux When I click the documentation link in the completion widget for PHP, KDevelop crashes. Reproducible: Always Steps to Reproduce: 1 Type an incomplete php statement 2 Invoke code completion and show the expansion widget 3 Click on the documentation link and it crashes I have attached a simple PHP file to reproduce it. Invoke the code completion for the third line and then expand 'saveXml' item and open the documentation. Actual Results: KDevelop crashes Expected Results: Open the documentation widgeteve Application: KDevelop (kdevelop), signal: Segmentation fault [Current thread is 1 (Thread 0x7f83c1630760 (LWP 4168))] Thread 9 (Thread 0x7f83aca49700 (LWP 4172)): #0 0x00007f83be53986b in pthread_cond_timedwait () from /lib64/libpthread.so.0 #1 0x00007f83bfac7151 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4 #2 0x00007f83bbeb364a in KDevelop::DUChainPrivate::CleanupThread::run (this=0x30e8840) at /var/tmp/portage/dev-util/kdevplatform-9999/work/kdevplatform-9999/language/duchain/duchain.cpp:282 #3 0x00007f83bfac6b15 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4 #4 0x00007f83be534d1c in start_thread () from /lib64/libpthread.so.0 #5 0x00007f83be81f89d in clone () from /lib64/libc.so.6 Thread 8 (Thread 0x7f83a25f7700 (LWP 4174)): #0 0xffffffffff600136 in ?? () #1 0x00007f83a25f6b20 in ?? () #2 0x00007fffa55ff79e in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?) Thread 7 (Thread 0x7f839a5e4700 (LWP 4177)): #0 0x00007f83be5394ec in pthread_cond_wait () from /lib64/libpthread.so.0 #1 0x00007f83ad7cbd84 in QTWTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib64/qt4/libQtScript.so.4 #2 0x00007f83ad7cbdb9 in QTWTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/qt4/libQtScript.so.4 #3 0x00007f83be534d1c in start_thread () from /lib64/libpthread.so.0 #4 0x00007f83be81f89d in clone () from /lib64/libc.so.6 Thread 6 (Thread 0x7f839987f700 (LWP 4185)): #0 0xffffffffff600136 in ?? () #1 0x00007f839987eae0 in ?? () #2 0x00007fffa55ff79e in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?) Thread 5 (Thread 0x7f8399076700 (LWP 4186)): #0 0x00007f83be5394ec in pthread_cond_wait () from /lib64/libpthread.so.0 #1 0x00007f83b66199e4 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/qt4/libQtWebKit.so.4 #2 0x00007f83be534d1c in start_thread () from /lib64/libpthread.so.0 #3 0x00007f83be81f89d in clone () from /lib64/libc.so.6 Thread 4 (Thread 0x7f8394f2e700 (LWP 4438)): #0 0x00007f83be5394ec in pthread_cond_wait () from /lib64/libpthread.so.0 #1 0x00007f83bfac71e3 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4 #2 0x00007f83b6e6bf24 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () from /usr/lib64/libthreadweaver.so.4 #3 0x00007f83b6e6e593 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib64/libthreadweaver.so.4 #4 0x00007f83b6e6e5ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib64/libthreadweaver.so.4 #5 0x00007f83b6e6d387 in ThreadWeaver::ThreadRunHelper::run(ThreadWeaver::WeaverImpl*, ThreadWeaver::Thread*) () from /usr/lib64/libthreadweaver.so.4 #6 0x00007f83b6e6d418 in ThreadWeaver::Thread::run() () from /usr/lib64/libthreadweaver.so.4 #7 0x00007f83bfac6b15 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4 #8 0x00007f83be534d1c in start_thread () from /lib64/libpthread.so.0 #9 0x00007f83be81f89d in clone () from /lib64/libc.so.6 Thread 3 (Thread 0x7f839572f700 (LWP 4439)): #0 0x00007f83be5394ec in pthread_cond_wait () from /lib64/libpthread.so.0 #1 0x00007f83bfac71e3 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4 #2 0x00007f83b6e6bf24 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () from /usr/lib64/libthreadweaver.so.4 #3 0x00007f83b6e6e593 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib64/libthreadweaver.so.4 #4 0x00007f83b6e6d387 in ThreadWeaver::ThreadRunHelper::run(ThreadWeaver::WeaverImpl*, ThreadWeaver::Thread*) () from /usr/lib64/libthreadweaver.so.4 #5 0x00007f83b6e6d418 in ThreadWeaver::Thread::run() () from /usr/lib64/libthreadweaver.so.4 #6 0x00007f83bfac6b15 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4 #7 0x00007f83be534d1c in start_thread () from /lib64/libpthread.so.0 #8 0x00007f83be81f89d in clone () from /lib64/libc.so.6 Thread 2 (Thread 0x7f8397ece700 (LWP 4953)): #0 0x00007f83be53986b in pthread_cond_timedwait () from /lib64/libpthread.so.0 #1 0x00007f83bfac7151 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4 #2 0x00007f83bfabbcaf in QThreadPoolThread::run() () from /usr/lib64/qt4/libQtCore.so.4 #3 0x00007f83bfac6b15 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4 #4 0x00007f83be534d1c in start_thread () from /lib64/libpthread.so.0 #5 0x00007f83be81f89d in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7f83c1630760 (LWP 4168)): [KCrash Handler] #6 0x00007f83bf1dc100 in QTextControl::textInteractionFlags() const () from /usr/lib64/qt4/libQtGui.so.4 #7 0x00007f83bf3e365a in QTextEdit::isReadOnly() const () from /usr/lib64/qt4/libQtGui.so.4 #8 0x00007f83bf3e46f4 in QTextEdit::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #9 0x00007f83beff4603 in QWidget::event(QEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #10 0x00007f83bf3784c6 in QFrame::event(QEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #11 0x00007f83bfbac606 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4 #12 0x00007f83befa39f1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #13 0x00007f83befa8d84 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #14 0x00007f83c03ab156 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5 #15 0x00007f83bfbac483 in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4 #16 0x00007f83befa49e6 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/qt4/libQtGui.so.4 #17 0x00007f83bf022020 in QETWidget::translateMouseEvent(_XEvent const*) () from /usr/lib64/qt4/libQtGui.so.4 #18 0x00007f83bf020709 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #19 0x00007f83bf04779a in x11EventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtGui.so.4 #20 0x00007f83b92dd982 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #21 0x00007f83b92de130 in g_main_context_iterate.clone.6 () from /usr/lib64/libglib-2.0.so.0 #22 0x00007f83b92de3cd in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #23 0x00007f83bfbd6a7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4 #24 0x00007f83bf04744e in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4 #25 0x00007f83bfbab8a2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4 #26 0x00007f83bfbabae4 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4 #27 0x00007f83bfbafe63 in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4 #28 0x0000000000409f20 in main (argc=3, argv=0x7fff00000000) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/app/main.cpp:474
There's a more generic bug dealing with this: 293977. Marking as duplicate. *** This bug has been marked as a duplicate of bug 293977 ***