Crash while closing files. (kdevelop 3.4 svn)

Jens Dagerbo jens.dagerbo at swipnet.se
Wed Nov 29 01:40:27 UTC 2006


Groan. Yeah.. my fault, I'm afraid. We need to "step off" the callback from 
KDirWatch before we show a messagebox in order to not crash somewhere deep in 
kdelibs in some scenarios, but as we do that, there is a "microscopic" chance 
the document has unloaded between the modification signal and our reaction to 
it. There is an easy solution I believe should work. I'll fix it when I've 
had some sleep..

// jens

On Tuesday 28 November 2006 19:09, Christoph Bartoschek wrote:
> Hi,
>
> I have a dirctory with about 40 files managed by subversion. Each file has
> the svn:keywords tag Id set. This means that each file is changed during
> checkin. Now I change each file slightly and commit the changes while
> kdevelop has all files open.
>
> Now all files changed on harddisk and kdevelop shows me that. Therefore I
> start closing all files by pressing and holding Ctrl+W. After the last file
> kdevelop crashes with the follwoing backtrace:
>
>
>
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread -1247648080 (LWP 9276)]
> 0x0804ff16 in QShared::ref (this=0x1)
> at /home/kde/software/qt3/include/qshared.h:49
> 49          void ref()          { count++; }
> (gdb) where
> #0  0x0804ff16 in QShared::ref (this=0x1)
> at /home/kde/software/qt3/include/qshared.h:49
> #1  0xb66c21e1 in QString::operator= (this=0xbfb0a220, s=@0xb8bceb4) at
> tools/qstring.cpp:1593
> #2  0xb6bc49a8 in KURL::operator= (this=0xbfb0a21c, _u=@0xb8bceb0)
> at /home/kde/software/source/kdelibs/kdecore/kurl.cpp:1070
> #3  0xb6bc4b8a in KURL (this=0xbfb0a21c, _u=@0xb8bceb0)
> at /home/kde/software/source/kdelibs/kdecore/kurl.cpp:485
> #4  0xb7eb7abc in KParts::ReadOnlyPart::url (this=0xb8bce70)
> at /home/kde/software/kde/include/kparts/part.h:390
> #5  0xb7ecec94 in PartController::slotDocumentDirtyStepTwo (this=0x8140f48,
> payload=0xc239f10)
>     at /home/kde/software/source/kdevelop/src/partcontroller.cpp:1443
> #6  0xb7ed0724 in PartController::qt_invoke (this=0x8140f48, _id=29,
> _o=0xbfb0a364)
> at /home/kde/software/source/kdevelop/src/partcontroller.moc:192
> #7  0xb63134b3 in QObject::activate_signal (this=0xbc83d58,
> clist=0xbcf7a48, o=0xbfb0a364) at kernel/qobject.cpp:2356
> #8  0xb7e55cf7 in KDevJobTimer::timeout (this=0xbc83d58, t0=0xc239f10)
> at /home/kde/software/source/kdevelop/lib/util/kdevjobtimer.moc:99
> #9  0xb7e55dc9 in KDevJobTimer::slotTimeout (this=0xbc83d58)
> at /home/kde/software/source/kdevelop/lib/util/kdevjobtimer.cpp:34
> #10 0xb7e55e29 in KDevJobTimer::qt_invoke (this=0xbc83d58, _id=2,
> _o=0xbfb0a48c)
> at /home/kde/software/source/kdevelop/lib/util/kdevjobtimer.moc:105
> #11 0xb63134b3 in QObject::activate_signal (this=0xbc83d58,
> clist=0xbad0d20, o=0xbfb0a48c) at kernel/qobject.cpp:2356
> #12 0xb6314260 in QObject::activate_signal (this=0xbc83d58, signal=2) at
> kernel/qobject.cpp:2325
> #13 0xb673efc2 in QTimer::timeout (this=0xbc83d58)
> at .moc/debug-shared-mt/moc_qtimer.cpp:82
> #14 0xb6342190 in QTimer::event (this=0xbc83d58, e=0xbfb0a798) at
> kernel/qtimer.cpp:219
> #15 0xb62a1b39 in QApplication::internalNotify (this=0xbfb0aa38,
> receiver=0xbc83d58, e=0xbfb0a798) at kernel/qapplication.cpp:2635
> #16 0xb62a3a98 in QApplication::notify (this=0xbfb0aa38,
> receiver=0xbc83d58, e=0xbfb0a798) at kernel/qapplication.cpp:2358
> #17 0xb6b42ba9 in KApplication::notify (this=0xbfb0aa38,
> receiver=0xbc83d58, event=0xbfb0a798)
>     at /home/kde/software/source/kdelibs/kdecore/kapplication.cpp:550
> #18 0xb7cf274e in QApplication::sendEvent (receiver=0xbc83d58,
> event=0xbfb0a798) at /home/kde/software/qt3/include/qapplication.h:496
> #19 0xb62929fa in QEventLoop::activateTimers (this=0x80ad3c8) at
> kernel/qeventloop_unix.cpp:556
> #20 0xb6242074 in QEventLoop::processEvents (this=0x80ad3c8, flags=4) at
> kernel/qeventloop_x11.cpp:389
> #21 0xb62bcc26 in QEventLoop::enterLoop (this=0x80ad3c8) at
> kernel/qeventloop.cpp:198
> #22 0xb62bca72 in QEventLoop::exec (this=0x80ad3c8) at
> kernel/qeventloop.cpp:145
> #23 0xb62a37f1 in QApplication::exec (this=0xbfb0aa38) at
> kernel/qapplication.cpp:2758
> #24 0x0804f062 in main (argc=-1234320188, argv=0xb66dc4da)
> at /home/kde/software/source/kdevelop/src/main.cpp:149
>
> _______________________________________________
> KDevelop-devel mailing list
> KDevelop-devel at barney.cs.uni-potsdam.de
> https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel




More information about the KDevelop-devel mailing list