Crash on KDirModel

Rafael Fernández López ereslibre at kde.org
Wed May 21 01:36:45 BST 2008


Hi,

It seems I am reaching a crash on KDirModel. All you need to do is to fire 
Dolphin with a file foo.tar.gz in your /home 
(e.g. /home/ereslibre/foo.tar.gz).

I have enabled the option "navigate through archives".

I enter foo.tar.gz when being at my /home/ereslibre folder by clicking on it. 
I navigate into folder foo.tar.gz/bar. Later, I click on "ereslibre" for 
going back to my home. Crash.

Attached is the backtrace and a suggested fix.

The problem here is that pathStr 
is "/home/ereslibre/liblicense-0.7.0.tar.gz/liblicense-0.7.0" and u 
is "/home/ereslibre/liblicense-0.7.0.tar.gz".

When trying to ask for isDir(), this returns false.

Can I commit this fix ?


Regards,
Rafael Fernández López.
-------------- next part --------------
Application: Dolphin (dolphin), signal SIGABRT
[Thread debugging using libthread_db enabled]
[New Thread 0xb6172720 (LWP 29184)]
[KCrash handler]
#6  0xb7f78410 in __kernel_vsyscall ()
#7  0xb64cc085 in raise () from /lib/tls/i686/cmov/libc.so.6
#8  0xb64cda01 in abort () from /lib/tls/i686/cmov/libc.so.6
#9  0xb7dc3895 in qt_message_output (msgType=QtFatalMsg, 
    buf=0xbfdb8b90 "ASSERT: \"isDir(*it)\" in file /home/ereslibre/kdesvn/trunk/KDE/kdelibs/kio/kio/kdirmodel.cpp, line 192") at global/qglobal.cpp:2058
#10 0xb7dc3919 in qFatal (msg=0xb7f19fb8 "ASSERT: \"%s\" in file %s, line %d")
    at global/qglobal.cpp:2260
#11 0xb7dc3d71 in qt_assert (assertion=0xb778677b "isDir(*it)", 
    file=0xb7786448 "/home/ereslibre/kdesvn/trunk/KDE/kdelibs/kio/kio/kdirmodel.cpp", line=192) at global/qglobal.cpp:1828
#12 0xb76308f7 in KDirModelPrivate::nodeForUrl (this=0x82d5b80, 
    _url=@0x82ae954, returnLastParent=false)
    at /home/ereslibre/kdesvn/trunk/KDE/kdelibs/kio/kio/kdirmodel.cpp:192
#13 0xb76324ce in KDirModel::indexForUrl (this=0x82bd288, url=@0x82ae954)
    at /home/ereslibre/kdesvn/trunk/KDE/kdelibs/kio/kio/kdirmodel.cpp:641
#14 0xb73cdbec in DolphinView::setCurrentItem (this=0x82b49e0, url=@0x82ae954)
    at /home/ereslibre/kdesvn/trunk/KDE/kdebase/apps/dolphin/src/dolphinview.cpp:352
#15 0x0806fd5a in DolphinViewContainer::slotDirListerCompleted (this=0x82ae918)
    at /home/ereslibre/kdesvn/trunk/KDE/kdebase/apps/dolphin/src/dolphinviewcontainer.cpp:237
#16 0x0806ff3e in DolphinViewContainer::qt_metacall (this=0x82ae918, 
    _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfdbae2c)
    at /home/ereslibre/kdesvn/build/KDE/kdebase/apps/dolphin/src/dolphinviewcontainer.moc:103
#17 0xb7ed7517 in QMetaObject::activate (sender=0x82bb1a8, 
    from_signal_index=5, to_signal_index=5, argv=0x0)
    at kernel/qobject.cpp:3007
#18 0xb7ed7999 in QMetaObject::activate (sender=0x82bb1a8, m=0x80973e0, 
    local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3080
#19 0xb7613b37 in KDirLister::completed (this=0x82bb1a8)
    at /home/ereslibre/kdesvn/build/KDE/kdelibs/kio/kdirlister.moc:199
#20 0xb7621dac in KDirListerCache::emitItemsFromCache (this=0x81f23c0, 
    lister=0x82bb1a8, _url=@0x84cd8e0, _reload=false, _emitCompleted=true)
    at /home/ereslibre/kdesvn/trunk/KDE/kdelibs/kio/kio/kdirlister.cpp:282
#21 0xb7621fb7 in KDirLister::Private::CachedItemsJob::done (this=0x84cd8d0)
    at /home/ereslibre/kdesvn/trunk/KDE/kdelibs/kio/kio/kdirlister.cpp:248
#22 0xb76220b3 in KDirLister::Private::CachedItemsJob::qt_metacall (
    this=0x84cd8d0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x84b76c0)
    at /home/ereslibre/kdesvn/build/KDE/kdelibs/kio/kdirlister_p.moc:154
#23 0xb7ed14ee in QMetaCallEvent::placeMetaCall (this=0x84cf308, 
    object=0x84cd8d0) at kernel/qobject.cpp:535
#24 0xb7ed5860 in QObject::event (this=0x84cd8d0, e=0x84cf308)
    at kernel/qobject.cpp:1137
#25 0xb69cf53d in QApplicationPrivate::notify_helper (this=0x80ae240, 
    receiver=0x84cd8d0, e=0x84cf308) at kernel/qapplication.cpp:3772
#26 0xb69cf823 in QApplication::notify (this=0xbfdbb714, receiver=0x84cd8d0, 
    e=0x84cf308) at kernel/qapplication.cpp:3366
#27 0xb7989f8d in KApplication::notify (this=0xbfdbb714, receiver=0x84cd8d0, 
    event=0x84cf308)
    at /home/ereslibre/kdesvn/trunk/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#28 0xb7ec268a in QCoreApplication::notifyInternal (this=0xbfdbb714, 
    receiver=0x84cd8d0, event=0x84cf308) at kernel/qcoreapplication.cpp:583
#29 0xb7ec61c9 in QCoreApplication::sendEvent (receiver=0x84cd8d0, 
    event=0x84cf308)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#30 0xb7ec2ba2 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, 
    event_type=0, data=0x80996b0) at kernel/qcoreapplication.cpp:1195
#31 0xb7ec2d53 in QCoreApplication::sendPostedEvents (receiver=0x0, 
    event_type=0) at kernel/qcoreapplication.cpp:1091
#32 0xb7ef35a2 in QCoreApplication::sendPostedEvents ()
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#33 0xb7ef27b3 in postEventSourceDispatch (s=0x80aff10)
    at kernel/qeventdispatcher_glib.cpp:211
#34 0xb6419bf8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#35 0xb641ce5e in ?? () from /usr/lib/libglib-2.0.so.0
#36 0x080afe90 in ?? ()
#37 0x00000000 in ?? ()
#0  0xb7f78410 in __kernel_vsyscall ()
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kdelibs-kdirmodel.diff
Type: text/x-diff
Size: 771 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20080521/4da084af/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20080521/4da084af/attachment.sig>


More information about the kde-core-devel mailing list