duchain seems to be broken

Andreas Pakulat apaku at gmx.de
Sat May 5 11:16:59 UTC 2007


Hi,

somehow the duchain seems to be broken, opening a .cpp file in KDevelop
asserts in kateviewinternal:3180. According to Christoph Cullman its
probably wrong locking and indeed the assert checks that isSmartLocked()
is set.

Could somebody with some more knowledge about this please fix this?
Backtrace and error message:
kdevelop (cpp support): ===-- PREPROCESSING --===> main.cpp <== readFromDisk: true size: 259
kdevelop (cpp support): ===-- PARSING --===> main.cpp
kdevelop (cpp support): building duchain
ASSERT: "m_doc->isSmartLocked() || thread() == QThread::currentThread()" in file /home/andreas/KDE-work/4.0/kdelibs/kate/part/kateviewinternal.cpp, line 3180

Program received signal SIGABRT, Aborted.
[Switching to Thread -1272063088 (LWP 17002)]
0xb6428d86 in raise () from /lib/libc.so.6
(gdb) bt
#0  0xb6428d86 in raise () from /lib/libc.so.6
#1  0xb642a5b1 in abort () from /lib/libc.so.6
#2  0xb7e1ce02 in qt_message_output (msgType=QtFatalMsg,
    buf=0xb42daed0 "ASSERT: \"m_doc->isSmartLocked() || thread() == QThread::currentThread()\" in file /home/andreas/KDE-work/4.0/kdelibs/kate/part/kateviewinternal.cpp, line 3180") at /home/andreas/KDE-work/4.0/qt-copy/src/corelib/global/qglobal.cpp:2145
#3  0xb7e1ce67 in qFatal (msg=0xb7f0ea04 "ASSERT: \"%s\" in file %s, line %d") at /home/andreas/KDE-work/4.0/qt-copy/src/corelib/global/qglobal.cpp:2376
#4  0xb7e1cfc1 in qt_assert (assertion=0xb44813c8 "m_doc->isSmartLocked() || thread() == QThread::currentThread()",
    file=0xb44811e8 "/home/andreas/KDE-work/4.0/kdelibs/kate/part/kateviewinternal.cpp", line=3180)
    at /home/andreas/KDE-work/4.0/qt-copy/src/corelib/global/qglobal.cpp:1904
#5  0xb43fea50 in KateViewInternal::relayoutRange (this=0x8570da0, range=@0x85eff28, realCursors=true)
    at /home/andreas/KDE-work/4.0/kdelibs/kate/part/kateviewinternal.cpp:3180
#6  0xb43fead6 in KateViewInternal::addHighlightRange (this=0x8570da0, range=0x85eff28) at /home/andreas/KDE-work/4.0/kdelibs/kate/part/kateviewinternal.cpp:3220
#7  0xb43ca3b2 in KateView::addHighlightRange (this=0x8235c30, range=0x85eff28) at /home/andreas/KDE-work/4.0/kdelibs/kate/part/kateview.cpp:1926
#8  0xb4390a1c in KateDocument::addHighlightToDocument (this=0x84c4348, topRange=0x85eff28, supportDynamic=false)
    at /home/andreas/KDE-work/4.0/kdelibs/kate/part/katedocument.cpp:5801
#9  0xb76a5935 in KDevelop::EditorIntegrator::topRange (this=0xb42dd1d4, type=KDevelop::EditorIntegrator::DefinitionUseChain)
    at /home/andreas/KDE-work/4.0/kdevelop/lib/editor/editorintegrator.cpp:193
#10 0xb4557936 in ContextBuilder::buildContexts (this=0xb42dd12c, url=@0x85c5a24, node=0x85dfc30, includes=0xb42dd204)
---Type <return> to continue, or q <return> to quit---
    at /home/andreas/KDE-work/4.0/kdevelop/languages/cpp/duchain/contextbuilder.cpp:91
#11 0xb455bfda in DeclarationBuilder::buildDeclarations (this=0xb42dd12c, url=@0x85c5a24, node=0x85dfc30, includes=0xb42dd204)
    at /home/andreas/KDE-work/4.0/kdevelop/languages/cpp/duchain/declarationbuilder.cpp:48
#12 0xb42fad59 in ParseJob::run (this=0x85d54f0) at /home/andreas/KDE-work/4.0/kdevelop/languages/cpp/cppparsejob.cpp:200
#13 0xb784953a in ThreadWeaver::JobRunHelper::runTheJob (this=0xb42dd2c0, th=0x85d5120, job=0x85d54f0)
    at /home/andreas/KDE-work/4.0/kdelibs/threadweaver/Weaver/Job.cpp:106
#14 0xb78497b3 in ThreadWeaver::Job::execute (this=0x85d54f0, th=0x85d5120) at /home/andreas/KDE-work/4.0/kdelibs/threadweaver/Weaver/Job.cpp:132
#15 0xb784bfdf in ThreadWeaver::JobCollectionJobRunner::execute (this=0x85d55f0, t=0x85d5120)
    at /home/andreas/KDE-work/4.0/kdelibs/threadweaver/Weaver/JobCollection.cpp:82
#16 0xb784892a in ThreadWeaver::ThreadRunHelper::run (this=0xb42dd348, parent=0x85ce4a0, th=0x85d5120)
    at /home/andreas/KDE-work/4.0/kdelibs/threadweaver/Weaver/Thread.cpp:95
#17 0xb7848a84 in ThreadWeaver::Thread::run (this=0x85d5120) at /home/andreas/KDE-work/4.0/kdelibs/threadweaver/Weaver/Thread.cpp:142
#18 0xb7e259c1 in QThreadPrivate::start (arg=0x85d5120) at /home/andreas/KDE-work/4.0/qt-copy/src/corelib/thread/qthread_unix.cpp:165
#19 0xb7dd7183 in start_thread () from /lib/libpthread.so.0
#20 0xb64cf9de in clone () from /lib/libc.so.6

Andreas

-- 
You have a reputation for being thoroughly reliable and trustworthy.
A pity that it's totally undeserved.




More information about the KDevelop-devel mailing list