Bug 160070

Summary: Browsing "trash:z" with dolphin causes it to crash
Product: [Unmaintained] kdelibs Reporter: Paul Sorensen <Paul.Sorensen>
Component: generalAssignee: David Faure <faure>
Status: RESOLVED FIXED    
Severity: crash CC: finex, kyle.yencha, Regnaron
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Backtrace for trunk

Description Paul Sorensen 2008-03-29 20:38:22 UTC
Version:           1.02 (using KDE 4.0.2)
Installed from:    Gentoo Packages
OS:                Linux

If I want to look at the contents of the trashcan with Dolphin - I can enter "trash://" as the address and it correctly works.

But if I enter "trash:z" as the address then Dolphin consistently crashes.
Comment 1 Peter Penz 2008-03-30 14:20:09 UTC
Thanks for the report, I was not aware about this.
Comment 2 FiNeX 2008-06-06 14:20:23 UTC
It doesn't crash using r816682. Could you confirm that it has been fixed?
Comment 3 Peter Penz 2008-06-06 15:57:26 UTC
> Could you confirm that it has been fixed?

This has been fixed. Sorry, I forgot to close this issue... I'm not totally happy how Dolphin reacts on invalid URLs (sometimes a message box pops up if no protocol is given), but I don't think I've time to fix this until KDE 4.1 -> no crash currently, some improvements will follow in KDE 4.2 :-)
Comment 4 Peter Penz 2008-07-19 15:02:55 UTC
I've reopened this issue and have reassigned it to kdelibs. An ASSERT is triggered in KDirModelPrivate::_k_slotNewItems():
    const QPair<int, KDirModelNode*> result = nodeForUrl(dir); // O(n*m)
    Q_ASSERT(result.second); // Are you calling KDirLister::openUrl(url,true,false)? Please use expandToUrl() instead.

(Dolphin does not call KDirLister::openUrl(url,true,false))

@David: I think this might be just a minor remaining relict of the important fix for the 'expand' issue in KDirLister.

Backtrace of the crash attached for trunk (happens also in 4.1).
Comment 5 Peter Penz 2008-07-19 15:03:56 UTC
Created attachment 26261 [details]
Backtrace for trunk
Comment 6 Christophe Marin 2008-07-30 01:07:16 UTC
Pasting for #5 

Application: Dolphin (dolphin), signal SIGABRT
[?1034hUsing host libthread_db library "/lib/libthread_db.so.1".

Thread 1 (Thread 0xb5f1a6d0 (LWP 13575)):
[KCrash Handler]
#6  0xffffe410 in __kernel_vsyscall ()
#7  0xb62b68f5 in raise () from /lib/libc.so.6
#8  0xb62b81e1 in abort () from /lib/libc.so.6
#9  0xb7e24961 in qt_message_output (msgType=QtFatalMsg, buf=0xbfb1e250 "ASSERT: \"result.second\" in file /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/kdirmodel.cpp, line 308")
    at global/qglobal.cpp:2058
#10 0xb7e249c5 in qFatal (msg=0xb7f7b338 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2260
#11 0xb7e24e0b in qt_assert (assertion=0xb78103ef "result.second", file=0xb780ffc0 "/home/kde4peter/kde/src/KDE/kdelibs/kio/kio/kdirmodel.cpp", line=308) at global/qglobal.cpp:1828
#12 0xb76e7628 in KDirModelPrivate::_k_slotNewItems (this=0x8178f90, items=@0x8500b98) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/kdirmodel.cpp:308
#13 0xb76e7d92 in KDirModel::qt_metacall (this=0x8161d70, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0xbfb2046c) at /home/kde4peter/kde/build/KDE/kdelibs/kio/kdirmodel.moc:76
#14 0xb7f3867f in QMetaObject::activate (sender=0x81787b0, from_signal_index=13, to_signal_index=13, argv=0xbfb2046c) at kernel/qobject.cpp:3007
#15 0xb7f38b01 in QMetaObject::activate (sender=0x81787b0, m=0x80aa1f0, local_signal_index=9, argv=0xbfb2046c) at kernel/qobject.cpp:3080
#16 0xb76cf652 in KDirLister::newItems (this=0x81787b0, _t1=@0x8500b98) at /home/kde4peter/kde/build/KDE/kdelibs/kio/kdirlister.moc:253
#17 0xb76cfc74 in KDirLister::Private::emitItems (this=0x81787d0) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/kdirlister.cpp:2202
#18 0xb76d4d16 in KDirListerCache::slotEntries (this=0x8161490, job=0x8452398, entries=@0xbfb208f4) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/kdirlister.cpp:977
#19 0xb76da838 in KDirListerCache::qt_metacall (this=0x8161490, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0xbfb206a8) at /home/kde4peter/kde/build/KDE/kdelibs/kio/kdirlister_p.moc:97
#20 0xb7f3867f in QMetaObject::activate (sender=0x8452398, from_signal_index=40, to_signal_index=40, argv=0xbfb206a8) at kernel/qobject.cpp:3007
#21 0xb7f38b01 in QMetaObject::activate (sender=0x8452398, m=0xb7833440, local_signal_index=0, argv=0xbfb206a8) at kernel/qobject.cpp:3080
#22 0xb76acb89 in KIO::ListJob::entries (this=0x8452398, _t1=0x8452398, _t2=@0xbfb208f4) at /home/kde4peter/kde/build/KDE/kdelibs/kio/jobclasses.moc:763
#23 0xb76b6356 in KIO::ListJobPrivate::slotListEntries (this=0x83270d0, list=@0xbfb208f4) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/job.cpp:2318
#24 0xb76b66b2 in KIO::ListJob::qt_metacall (this=0x8452398, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0xbfb2085c) at /home/kde4peter/kde/build/KDE/kdelibs/kio/jobclasses.moc:750
#25 0xb7f3867f in QMetaObject::activate (sender=0x8239400, from_signal_index=10, to_signal_index=10, argv=0xbfb2085c) at kernel/qobject.cpp:3007
#26 0xb7f38b01 in QMetaObject::activate (sender=0x8239400, m=0xb7835e24, local_signal_index=6, argv=0xbfb2085c) at kernel/qobject.cpp:3080
#27 0xb775cbf2 in KIO::SlaveInterface::listEntries (this=0x8239400, _t1=@0xbfb208f4) at /home/kde4peter/kde/build/KDE/kdelibs/kio/slaveinterface.moc:177
#28 0xb775ed10 in KIO::SlaveInterface::dispatch (this=0x8239400, _cmd=106, rawdata=@0xbfb209c4) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/slaveinterface.cpp:196
#29 0xb775eb15 in KIO::SlaveInterface::dispatch (this=0x8239400) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/slaveinterface.cpp:91
#30 0xb7750f48 in KIO::Slave::gotInput (this=0x8239400) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/slave.cpp:319
#31 0xb77523bc in KIO::Slave::qt_metacall (this=0x8239400, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0xbfb20ab4) at /home/kde4peter/kde/build/KDE/kdelibs/kio/slave.moc:75
#32 0xb7f3867f in QMetaObject::activate (sender=0x8179fc0, from_signal_index=4, to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3007
#33 0xb7f38b01 in QMetaObject::activate (sender=0x8179fc0, m=0xb7832a80, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3080
#34 0xb76802b7 in KIO::Connection::readyRead (this=0x8179fc0) at /home/kde4peter/kde/build/KDE/kdelibs/kio/connection.moc:84
#35 0xb76811f7 in KIO::ConnectionPrivate::dequeue (this=0x81431e8) at /home/kde4peter/kde/src/KDE/kdelibs/kio/kio/connection.cpp:82
#36 0xb7682125 in KIO::Connection::qt_metacall (this=0x8179fc0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x84608c8) at /home/kde4peter/kde/build/KDE/kdelibs/kio/connection.moc:72
#37 0xb7f325f2 in QMetaCallEvent::placeMetaCall (this=0x82e17f8, object=0x8179fc0) at kernel/qobject.cpp:535
#38 0xb7f36998 in QObject::event (this=0x8179fc0, e=0x82e17f8) at kernel/qobject.cpp:1137
#39 0xb6bf5dfd in QApplicationPrivate::notify_helper (this=0x80be828, receiver=0x8179fc0, e=0x82e17f8) at kernel/qapplication.cpp:3772
#40 0xb6bf6116 in QApplication::notify (this=0xbfb213d0, receiver=0x8179fc0, e=0x82e17f8) at kernel/qapplication.cpp:3366
#41 0xb7a05e61 in KApplication::notify (this=0xbfb213d0, receiver=0x8179fc0, event=0x82e17f8) at /home/kde4peter/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#42 0xb7f238d6 in QCoreApplication::notifyInternal (this=0xbfb213d0, receiver=0x8179fc0, event=0x82e17f8) at kernel/qcoreapplication.cpp:583
#43 0xb7f27415 in QCoreApplication::sendEvent (receiver=0x8179fc0, event=0x82e17f8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#44 0xb7f23dee in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x80ac288) at kernel/qcoreapplication.cpp:1195
#45 0xb7f23f9f in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1091
#46 0xb7f54b6a in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#47 0xb7f53d7b in postEventSourceDispatch (s=0x80c0958) at kernel/qeventdispatcher_glib.cpp:211
#48 0xb620d5d6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#49 0xb6210972 in ?? () from /usr/lib/libglib-2.0.so.0
#50 0x080c08d8 in ?? ()
#51 0x00000000 in ?? ()

Comment 7 Christophe Marin 2008-07-30 01:08:01 UTC
*** Bug 167694 has been marked as a duplicate of this bug. ***
Comment 8 Oliver Putz 2008-09-16 13:37:18 UTC
For this bug I get the same backtrace as for bug #160057, so I guess they are duplicates.

*** This bug has been marked as a duplicate of bug 160057 ***
Comment 9 David Faure 2008-09-26 15:07:37 UTC
Fixed in kio_trash r865038.