Bug 282340

Summary: Dolphin crash when moving out of deleted folder
Product: [Applications] dolphin Reporter: Hrvoje Senjan <hrvoje.senjan>
Component: generalAssignee: Peter Penz <peter.penz19>
Status: RESOLVED FIXED    
Severity: crash CC: anand.chirag, hrvoje.senjan
Priority: NOR    
Version: 1.99   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi
Dolphin_kcrash

Description Hrvoje Senjan 2011-09-19 12:03:13 UTC
Application: dolphin (1.99)
KDE Platform Version: 4.7.1 (4.7.1)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-11-generic x86_64
Distribution: Ubuntu oneiric (development branch)

-- Information about the crash:
- What I was doing when the application crashed:
I deleted (in Konsole) a folder in wich dolphin whas - moving out of the folder crashed dolphin. 
Dolphin 1.99

-- Backtrace:
Application: Dolphin (dolphin), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f7a054d9780 (LWP 3095))]

Thread 4 (Thread 0x7f79f26f3700 (LWP 3096)):
#0  0x00007f7a04db5773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f79fd4c6058 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f79fd4c6519 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7a011dbed6 in QEventDispatcherGlib::processEvents (this=0x16149c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#4  0x00007f7a011afcf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f7a011afef7 in QEventLoop::exec (this=0x7f79f26f2dd0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f7a010c727f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#7  0x00007f7a01192cbf in QInotifyFileSystemWatcherEngine::run (this=0x1606bb0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f7a010c9d05 in QThreadPrivate::start (arg=0x1606bb0) at thread/qthread_unix.cpp:331
#9  0x00007f79fd997edc in start_thread (arg=0x7f79f26f3700) at pthread_create.c:304
#10 0x00007f7a04dc189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f79f0ce3700 (LWP 3097)):
#0  0x00007f7a04db5773 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f79fd4c6058 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f79fd4c6519 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7a011dbed6 in QEventDispatcherGlib::processEvents (this=0x16e01b0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#4  0x00007f7a011afcf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f7a011afef7 in QEventLoop::exec (this=0x7f79f0ce2dd0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f7a010c727f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#7  0x00007f7a01192cbf in QInotifyFileSystemWatcherEngine::run (this=0x16e3de0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f7a010c9d05 in QThreadPrivate::start (arg=0x16e3de0) at thread/qthread_unix.cpp:331
#9  0x00007f79fd997edc in start_thread (arg=0x7f79f0ce3700) at pthread_create.c:304
#10 0x00007f7a04dc189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f79ea802700 (LWP 3112)):
#0  0x00007f7a04dba913 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f7a01192671 in QProcessManager::run (this=0x7f7a014e4580) at io/qprocess_unix.cpp:245
#2  0x00007f7a010c9d05 in QThreadPrivate::start (arg=0x7f7a014e4580) at thread/qthread_unix.cpp:331
#3  0x00007f79fd997edc in start_thread (arg=0x7f79ea802700) at pthread_create.c:304
#4  0x00007f7a04dc189d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f7a054d9780 (LWP 3095)):
[KCrash Handler]
#6  operator bool (this=0x40) at ../../kdecore/util/ksharedptr.h:106
#7  KFileItem::determineMimeType (this=0x7fff1e3e3cd0) at ../../kio/kio/kfileitem.cpp:696
#8  0x00007f7a04119927 in startPreviewJob (items=..., this=0x173cc30) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:522
#9  KFileItemModelRolesUpdater::startPreviewJob (this=0x173cc30, items=...) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:497
#10 0x00007f7a0411b833 in KFileItemModelRolesUpdater::resolvePendingRoles (this=0x173cc30) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:440
#11 0x00007f7a0411cf57 in sortAndResolvePendingRoles (this=0x173cc30) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:654
#12 KFileItemModelRolesUpdater::sortAndResolvePendingRoles (this=0x173cc30) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:617
#13 0x00007f7a0411d22e in KFileItemModelRolesUpdater::setPaused (this=0x173cc30, paused=<optimized out>) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:196
#14 0x00007f7a04128d3e in endTransaction (this=0x16ea850) at ../../../dolphin/src/kitemviews/kitemlistview.cpp:381
#15 KItemListView::endTransaction (this=0x16ea850) at ../../../dolphin/src/kitemviews/kitemlistview.cpp:372
#16 0x00007f7a04129a62 in KItemListView::slotItemsRemoved (this=0x16ea850, itemRanges=...) at ../../../dolphin/src/kitemviews/kitemlistview.cpp:685
#17 0x00007f7a04106ad9 in KFileItemListView::slotItemsRemoved (this=0x16ea850, itemRanges=<optimized out>) at ../../../dolphin/src/kitemviews/kfileitemlistview.cpp:334
#18 0x00007f7a04106abe in KFileItemListView::qt_metacall (this=0x16ea850, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff1e3e4160) at ./kfileitemlistview.moc:80
#19 0x00007f7a011c3eba in QMetaObject::activate (sender=0x16ead00, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff1e3e4160) at kernel/qobject.cpp:3278
#20 0x00007f7a04130335 in KItemModelBase::itemsRemoved (this=<optimized out>, _t1=<optimized out>) at ./kitemmodelbase.moc:113
#21 0x00007f7a04115443 in removeItems (items=<optimized out>, this=0x16ead00) at ../../../dolphin/src/kitemviews/kfileitemmodel.cpp:696
#22 KFileItemModel::removeItems (this=0x16ead00, items=<optimized out>) at ../../../dolphin/src/kitemviews/kfileitemmodel.cpp:629
#23 0x00007f7a04117be9 in KFileItemModel::qt_metacall (this=0x16ead00, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff1e3e4400) at ./kfileitemmodel.moc:92
#24 0x00007f7a011c3eba in QMetaObject::activate (sender=0x170a840, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff1e3e4400) at kernel/qobject.cpp:3278
#25 0x00007f7a02dfb865 in KDirLister::itemsDeleted (this=<optimized out>, _t1=<optimized out>) at ./kdirlister.moc:295
#26 0x00007f7a02dfc4d1 in KDirLister::Private::emitItemsDeleted (this=0x170a980, _items=<optimized out>) at ../../kio/kio/kdirlister.cpp:2521
#27 0x00007f7a02e01b76 in KDirListerCache::itemsDeleted (this=0x16512d0, listers=<optimized out>, deletedItems=...) at ../../kio/kio/kdirlister.cpp:1861
#28 0x00007f7a02e01d6a in KDirListerCache::deleteUnmarkedItems (this=0x16512d0, listers=..., lstItems=...) at ../../kio/kio/kdirlister.cpp:1855
#29 0x00007f7a02e09636 in KDirListerCache::slotUpdateResult (this=0x16512d0, j=<optimized out>) at ../../kio/kio/kdirlister.cpp:1791
#30 0x00007f7a02e0bf23 in KDirListerCache::qt_metacall (this=0x16512d0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff1e3e48a0) at ./kdirlister_p.moc:108
#31 0x00007f7a011c3eba in QMetaObject::activate (sender=0x1917dd0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff1e3e48a0) at kernel/qobject.cpp:3278
#32 0x00007f7a01616552 in KJob::result (this=<optimized out>, _t1=0x1917dd0) at ./kjob.moc:194
#33 0x00007f7a01616590 in KJob::emitResult (this=0x1917dd0) at ../../kdecore/jobs/kjob.cpp:312
#34 0x00007f7a02de0454 in KIO::SimpleJob::slotFinished (this=0x1917dd0) at ../../kio/kio/job.cpp:494
#35 0x00007f7a02de5175 in KIO::ListJob::slotFinished (this=0x1917dd0) at ../../kio/kio/job.cpp:2661
#36 0x00007f7a02dea439 in KIO::ListJob::qt_metacall (this=0x1917dd0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff1e3e4b60) at ./jobclasses.moc:821
#37 0x00007f7a011c3eba in QMetaObject::activate (sender=0x1b73d50, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3278
#38 0x00007f7a02e8bff1 in KIO::SlaveInterface::dispatch (this=<optimized out>, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:172
#39 0x00007f7a02e88ea5 in KIO::SlaveInterface::dispatch (this=0x1b73d50) at ../../kio/kio/slaveinterface.cpp:88
#40 0x00007f7a02e7c06e in KIO::Slave::gotInput (this=0x1b73d50) at ../../kio/kio/slave.cpp:344
#41 0x00007f7a02e7c7cc in KIO::Slave::qt_metacall (this=0x1b73d50, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff1e3e4f90) at ./slave.moc:82
#42 0x00007f7a011c3eba in QMetaObject::activate (sender=0x1b4b750, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3278
#43 0x00007f7a02db1177 in dequeue (this=<optimized out>) at ../../kio/kio/connection.cpp:82
#44 KIO::ConnectionPrivate::dequeue (this=0x1bb6a00) at ../../kio/kio/connection.cpp:71
#45 0x00007f7a02db121d in KIO::Connection::qt_metacall (this=0x1b4b750, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x1c91b50) at ./connection.moc:79
#46 0x00007f7a011c7a5e in QObject::event (this=0x1b4b750, e=<optimized out>) at kernel/qobject.cpp:1217
#47 0x00007f7a01bb13d4 in notify_helper (e=0x1cacbd0, receiver=0x1b4b750, this=0x1458f80) at kernel/qapplication.cpp:4486
#48 QApplicationPrivate::notify_helper (this=0x1458f80, receiver=0x1b4b750, e=0x1cacbd0) at kernel/qapplication.cpp:4458
#49 0x00007f7a01bb6241 in QApplication::notify (this=0x7fff1e3e5840, receiver=0x1b4b750, e=0x1cacbd0) at kernel/qapplication.cpp:4365
#50 0x00007f7a028c51a6 in KApplication::notify (this=0x7fff1e3e5840, receiver=0x1b4b750, event=0x1cacbd0) at ../../kdeui/kernel/kapplication.cpp:311
#51 0x00007f7a011b0afc in QCoreApplication::notifyInternal (this=0x7fff1e3e5840, receiver=0x1b4b750, event=0x1cacbd0) at kernel/qcoreapplication.cpp:787
#52 0x00007f7a011b451f in sendEvent (event=0x1cacbd0, receiver=0x1b4b750) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#53 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x142e350) at kernel/qcoreapplication.cpp:1428
#54 0x00007f7a011dba73 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#55 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:277
#56 0x00007f79fd4c5b4d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007f79fd4c6348 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#58 0x00007f79fd4c6519 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#59 0x00007f7a011dbed6 in QEventDispatcherGlib::processEvents (this=0x142fa00, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#60 0x00007f7a01c58c6e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#61 0x00007f7a011afcf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#62 0x00007f7a011afef7 in QEventLoop::exec (this=0x7fff1e3e57d0, flags=...) at kernel/qeventloop.cpp:201
#63 0x00007f7a011b4789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#64 0x00007f7a050c8169 in kdemain (argc=6, argv=0x7fff1e3e5d28) at ../../../dolphin/src/main.cpp:85
#65 0x00007f7a04d0130d in __libc_start_main (main=0x400640 <main(int, char**)>, argc=6, ubp_av=0x7fff1e3e5d28, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff1e3e5d18) at libc-start.c:226
#66 0x0000000000400671 in _start ()

Reported using DrKonqi
Comment 1 Hrvoje Senjan 2011-09-23 07:57:20 UTC
Created attachment 63885 [details]
New crash information added by DrKonqi

dolphin (1.99) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4

- What I was doing when the application crashed:

I'm able to trigger the crash always when toggling Alt + . several times in a row (3-4 times).

-- Backtrace (Reduced):
#6  operator bool (this=0x40) at ../../kdecore/util/ksharedptr.h:106
#7  KFileItem::determineMimeType (this=0x7fff9990af40) at ../../kio/kio/kfileitem.cpp:696
#8  0x00007f26cfacf307 in startPreviewJob (items=..., this=0x10d1110) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:522
#9  KFileItemModelRolesUpdater::startPreviewJob (this=0x10d1110, items=...) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:497
#10 0x00007f26cfad1213 in KFileItemModelRolesUpdater::resolvePendingRoles (this=0x10d1110) at ../../../dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:440
Comment 2 Chirag Anand 2011-09-24 20:59:22 UTC
I am not able to reproduce it with the current master. I tried these steps:
- Create a new folder, and open it
- Remove it via terminal
- Press 'alt + .' again and again
- Go back and forward.

Nothing happens.

Please correct me if I need to do something else to reproduce it.
Comment 3 Hrvoje Senjan 2011-09-24 22:16:15 UTC
Alt + .
Refresh (F5)
And then pressing Alt + . 3 times
Comment 4 Hrvoje Senjan 2011-09-25 08:40:26 UTC
Anand, i've made a video of what triggers the crash:
http://www.youtube.com/watch?v=zrFqOyCtLRw
Comment 5 Hrvoje Senjan 2011-09-25 08:53:31 UTC
Created attachment 63943 [details]
Dolphin_kcrash

Thats the behaviour with kde-baseapps compiled against 4.7.1 kdelibs/runtime/workspace. Kde-baseapps compiled against master has a different behaviour - if previews are turned on, then it crashes after (i'm attachint the backtrace of this):
Alt + .
F5
Alt + .
If previews are turned off , i also can't reproduce the crash.
Comment 6 Chirag Anand 2011-10-31 08:58:06 UTC
[The video isn't present there any more].
I am running the same version, but still can't reproduce this (with previews enabled). May be someone else needs to look at it.
Comment 7 Hrvoje Senjan 2011-10-31 10:53:28 UTC
I also can no longer reproduce this.