Bug 294531 - Crash when switching from Icons View (with "Size" and "Date" as additional info) to Details View
Summary: Crash when switching from Icons View (with "Size" and "Date" as additional in...
Status: RESOLVED FIXED
Alias: None
Product: dolphin
Classification: Applications
Component: general (show other bugs)
Version: 16.12.2
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Peter Penz
URL:
Keywords:
: 291631 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-02-20 22:28 UTC by Frank Reininghaus
Modified: 2013-04-25 20:46 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 4.8.1
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frank Reininghaus 2012-02-20 22:28:58 UTC
Application: dolphin (2.0)
KDE Platform Version: 4.8.00 (4.8.0) (Compiled from sources)
Qt Version: 4.8.0
Operating System: Linux 2.6.37.6-0.9-desktop x86_64
Distribution: "openSUSE 11.4 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:

Configure Icons View to show "Size" and "Date" as additional info in the view properties dialog, then switch to Details View (with no info except "Name", "Size", and "Date"). Dolphin hits an assert in KFileItemListWidget because the "expandedParentsCount" role has not been added to the model.

The reason is the following: Normally, when switching to Details View from another view mode without additional info, DolphinView::applyViewProperties() notices that the shown information has changed, then calls DolphinView::applyAdditionalInfoListToView(), which calls DolphinItemListContainer::setVisibleRoles(), and so on, until KFileItemListView::onVisibleRolesChanged() calls KFileItemListView::applyRolesToModel(), which sets up the roles properly for Details View.

However, in the described use case, this does not work because DolpinView thinks that the info shown in the view has not actually changed (which is sort of true, because the Details View-related roles are not shown explicitly to the user).

One possible fix is to modify KFileItemListView::setItemLayout() and call KFileItemListView::applyRolesToModel() also from there. But there might be a better way to do it.

The crash can be reproduced every time.

-- Backtrace:
Application: Dolphin (dolphin), signal: Aborted
[Current thread is 1 (Thread 0x7fc21dffd760 (LWP 13051))]

Thread 2 (Thread 0x7fc20fa78700 (LWP 13055)):
#0  0x00007fc21b66027f in QTimerInfoList::timerWait (this=0x7a9e60, tm=...) at kernel/qeventdispatcher_unix.cpp:455
#1  0x00007fc21b65ca3c in timerSourcePrepareHelper (src=0x7a9e00, timeout=0x7fc20fa77b5c) at kernel/qeventdispatcher_glib.cpp:136
#2  0x00007fc21b65cbe1 in timerSourcePrepare (source=0x7a9e00, timeout=0x7fc20fa77b5c) at kernel/qeventdispatcher_glib.cpp:169
#3  0x00007fc215253087 in g_main_context_prepare () from /lib64/libglib-2.0.so.0
#4  0x00007fc215253fa9 in ?? () from /lib64/libglib-2.0.so.0
#5  0x00007fc215254650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#6  0x00007fc21b65d77c in QEventDispatcherGlib::processEvents (this=0x7cd9a0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#7  0x00007fc21b61e3fe in QEventLoop::processEvents (this=0x7fc20fa77d80, flags=...) at kernel/qeventloop.cpp:149
#8  0x00007fc21b61e588 in QEventLoop::exec (this=0x7fc20fa77d80, flags=...) at kernel/qeventloop.cpp:204
#9  0x00007fc21b4ea721 in QThread::exec (this=0x794420) at thread/qthread.cpp:501
#10 0x00007fc21b5f8fe4 in QInotifyFileSystemWatcherEngine::run (this=0x794420) at io/qfilesystemwatcher_inotify.cpp:248
#11 0x00007fc21b4ed0a6 in QThreadPrivate::start (arg=0x794420) at thread/qthread_unix.cpp:298
#12 0x00007fc21b22da3f in start_thread () from /lib64/libpthread.so.0
#13 0x00007fc218a2b71d in clone () from /lib64/libc.so.6
#14 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fc21dffd760 (LWP 13051)):
[KCrash Handler]
#6  0x00007fc21898aab5 in raise () from /lib64/libc.so.6
#7  0x00007fc21898bfb6 in abort () from /lib64/libc.so.6
#8  0x00007fc21b4dfc88 in qt_message_output (msgType=QtFatalMsg, buf=0xadb998 "ASSERT: \"values.contains(\"expandedParentsCount\")\" in file /home/kde-4.8/kde/src/KDE/kde-baseapps/dolphin/src/kitemviews/kfileitemlistwidget.cpp, line 437") at global/qglobal.cpp:2252
#9  0x00007fc21b4dfe04 in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7fc21b6a5808 "ASSERT: \"%s\" in file %s, line %d", ap=0x7ffff6808de0) at global/qglobal.cpp:2298
#10 0x00007fc21b4e0672 in qFatal (msg=0x7fc21b6a5808 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2481
#11 0x00007fc21b4df83b in qt_assert (assertion=0x7fc21d6dec98 "values.contains(\"expandedParentsCount\")", file=0x7fc21d6dea08 "/home/kde-4.8/kde/src/KDE/kde-baseapps/dolphin/src/kitemviews/kfileitemlistwidget.cpp", line=437) at global/qglobal.cpp:1999
#12 0x00007fc21d67241a in KFileItemListWidget::updateExpansionArea (this=0xa55c40) at /home/kde-4.8/kde/src/KDE/kde-baseapps/dolphin/src/kitemviews/kfileitemlistwidget.cpp:437
#13 0x00007fc21d672338 in KFileItemListWidget::triggerCacheRefreshing (this=0xa55c40) at /home/kde-4.8/kde/src/KDE/kde-baseapps/dolphin/src/kitemviews/kfileitemlistwidget.cpp:424
#14 0x00007fc21d671000 in KFileItemListWidget::paint (this=0xa55c40, painter=0x7ffff680a2a0, option=0x90d518, widget=0x8a7b10) at /home/kde-4.8/kde/src/KDE/kde-baseapps/dolphin/src/kitemviews/kfileitemlistwidget.cpp:93
#15 0x00007fc21a977eff in _q_paintItem (item=0xa55c50, painter=0x7ffff680a2a0, option=0x90d518, widget=0x8a7b10, useWindowOpacity=true, painterStateProtection=true) at graphicsview/qgraphicsscene.cpp:4331
#16 0x00007fc21a978678 in QGraphicsScenePrivate::drawItemHelper (this=0x90d2f0, item=0xa55c50, painter=0x7ffff680a2a0, option=0x90d518, widget=0x8a7b10, painterStateProtection=true) at graphicsview/qgraphicsscene.cpp:4427
#17 0x00007fc21a97b9f2 in QGraphicsScenePrivate::draw (this=0x90d2f0, item=0xa55c50, painter=0x7ffff680a2a0, viewTransform=0x0, transformPtr=0xa3ea50, exposedRegion=0x94c818, widget=0x8a7b10, opacity=1, effectTransform=0x0, wasDirtyParentSceneTransform=false, drawItem=true) at graphicsview/qgraphicsscene.cpp:4962
#18 0x00007fc21a97b293 in QGraphicsScenePrivate::drawSubtreeRecursive (this=0x90d2f0, item=0xa55c50, painter=0x7ffff680a2a0, viewTransform=0x0, exposedRegion=0x94c818, widget=0x8a7b10, parentOpacity=1, effectTransform=0x0) at graphicsview/qgraphicsscene.cpp:4853
#19 0x00007fc21a97a659 in QGraphicsScenePrivate::drawItems (this=0x90d2f0, painter=0x7ffff680a2a0, viewTransform=0x0, exposedRegion=0x94c818, widget=0x8a7b10) at graphicsview/qgraphicsscene.cpp:4735
#20 0x00007fc21a9a93b5 in QGraphicsView::paintEvent (this=0x84f9c0, event=0x7ffff680b270) at graphicsview/qgraphicsview.cpp:3471
#21 0x00007fc21a2228fb in QWidget::event (this=0x84f9c0, event=0x7ffff680b270) at kernel/qwidget.cpp:8508
#22 0x00007fc21a6f33d3 in QFrame::event (this=0x84f9c0, e=0x7ffff680b270) at widgets/qframe.cpp:557
#23 0x00007fc21a79f467 in QAbstractScrollArea::viewportEvent (this=0x84f9c0, e=0x7ffff680b270) at widgets/qabstractscrollarea.cpp:1043
#24 0x00007fc21a9a6669 in QGraphicsView::viewportEvent (this=0x84f9c0, event=0x7ffff680b270) at graphicsview/qgraphicsview.cpp:2866
#25 0x00007fc21a7a0179 in QAbstractScrollAreaPrivate::viewportEvent (this=0x94c390, event=0x7ffff680b270) at widgets/qabstractscrollarea_p.h:100
#26 0x00007fc21a7a0272 in QAbstractScrollAreaFilter::eventFilter (this=0x90baa0, o=0x8a7b10, e=0x7ffff680b270) at widgets/qabstractscrollarea_p.h:116
#27 0x00007fc21b620e39 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x62a4d0, receiver=0x8a7b10, event=0x7ffff680b270) at kernel/qcoreapplication.cpp:986
#28 0x00007fc21a1bc65b in QApplicationPrivate::notify_helper (this=0x62a4d0, receiver=0x8a7b10, e=0x7ffff680b270) at kernel/qapplication.cpp:4546
#29 0x00007fc21a1bc384 in QApplication::notify (this=0x7ffff680f230, receiver=0x8a7b10, e=0x7ffff680b270) at kernel/qapplication.cpp:4515
#30 0x00007fc21c44e125 in KApplication::notify (this=0x7ffff680f230, receiver=0x8a7b10, event=0x7ffff680b270) at /home/kde-4.8/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#31 0x00007fc21b620b99 in QCoreApplication::notifyInternal (this=0x7ffff680f230, receiver=0x8a7b10, event=0x7ffff680b270) at kernel/qcoreapplication.cpp:876
#32 0x00007fc21a1beeef in QCoreApplication::sendSpontaneousEvent (receiver=0x8a7b10, event=0x7ffff680b270) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#33 0x00007fc21a21a3a8 in QWidgetPrivate::drawWidget (this=0x8d4170, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5585
#34 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x94c390, pdev=0x9f9840, siblings=..., index=1, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#35 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x94c390, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#36 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x865b20, pdev=0x9f9840, siblings=..., index=3, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#37 0x00007fc21a21b2ec in QWidgetPrivate::paintSiblingsRecursive (this=0x865b20, pdev=0x9f9840, siblings=..., index=7, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5781
#38 0x00007fc21a21b2ec in QWidgetPrivate::paintSiblingsRecursive (this=0x865b20, pdev=0x9f9840, siblings=..., index=8, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5781
#39 0x00007fc21a21b2ec in QWidgetPrivate::paintSiblingsRecursive (this=0x865b20, pdev=0x9f9840, siblings=..., index=9, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5781
#40 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x865b20, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#41 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x85a9a0, pdev=0x9f9840, siblings=..., index=2, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#42 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x85a9a0, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#43 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x800a10, pdev=0x9f9840, siblings=..., index=2, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#44 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x800a10, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#45 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x70b030, pdev=0x9f9840, siblings=..., index=0, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#46 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x70b030, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#47 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x8e4e50, pdev=0x9f9840, siblings=..., index=1, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#48 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x8e4e50, pdev=0x9f9840, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#49 0x00007fc21a21b468 in QWidgetPrivate::paintSiblingsRecursive (this=0x791540, pdev=0x9f9840, siblings=..., index=9, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5794
#50 0x00007fc21a21a843 in QWidgetPrivate::drawWidget (this=0x791540, pdev=0x9f9840, rgn=..., offset=..., flags=5, sharedPainter=0x0, backingStore=0x912430) at kernel/qwidget.cpp:5638
#51 0x00007fc21a466d7e in QWidgetBackingStore::sync (this=0x912430) at painting/qbackingstore.cpp:1373
#52 0x00007fc21a210e56 in QWidgetPrivate::syncBackingStore (this=0x791540) at kernel/qwidget.cpp:1891
#53 0x00007fc21a222f2a in QWidget::event (this=0x7879f0, event=0x87fb70) at kernel/qwidget.cpp:8655
#54 0x00007fc21a7173ee in QMainWindow::event (this=0x7879f0, event=0x87fb70) at widgets/qmainwindow.cpp:1478
#55 0x00007fc21c5428c3 in KMainWindow::event (this=0x7879f0, ev=0x87fb70) at /home/kde-4.8/kde/src/KDE/kdelibs/kdeui/widgets/kmainwindow.cpp:1084
#56 0x00007fc21c58f7f5 in KXmlGuiWindow::event (this=0x7879f0, ev=0x87fb70) at /home/kde-4.8/kde/src/KDE/kdelibs/kdeui/xmlgui/kxmlguiwindow.cpp:126
#57 0x00007fc21a1bc684 in QApplicationPrivate::notify_helper (this=0x62a4d0, receiver=0x7879f0, e=0x87fb70) at kernel/qapplication.cpp:4550
#58 0x00007fc21a1bc384 in QApplication::notify (this=0x7ffff680f230, receiver=0x7879f0, e=0x87fb70) at kernel/qapplication.cpp:4515
#59 0x00007fc21c44e125 in KApplication::notify (this=0x7ffff680f230, receiver=0x7879f0, event=0x87fb70) at /home/kde-4.8/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#60 0x00007fc21b620b99 in QCoreApplication::notifyInternal (this=0x7ffff680f230, receiver=0x7879f0, event=0x87fb70) at kernel/qcoreapplication.cpp:876
#61 0x00007fc21b6246ab in QCoreApplication::sendEvent (receiver=0x7879f0, event=0x87fb70) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#62 0x00007fc21b621bb4 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x7879f0, event_type=77, data=0x60d660) at kernel/qcoreapplication.cpp:1500
#63 0x00007fc21b6217d5 in QCoreApplication::sendPostedEvents (receiver=0x7879f0, event_type=77) at kernel/qcoreapplication.cpp:1393
#64 0x00007fc21a98459f in QGraphicsViewPrivate::dispatchPendingUpdateRequests (this=0x94c390) at ../../include/QtGui/private/../../../src/gui/graphicsview/qgraphicsview_p.h:200
#65 0x00007fc21a96abc7 in QGraphicsScenePrivate::_q_processDirtyItems (this=0x90d2f0) at graphicsview/qgraphicsscene.cpp:515
#66 0x00007fc21a983d00 in QGraphicsScene::qt_static_metacall (_o=0x81f4a0, _c=QMetaObject::InvokeMetaMethod, _id=14, _a=0xae7d50) at .moc/debug-shared/moc_qgraphicsscene.cpp:107
#67 0x00007fc21b638b1f in QMetaCallEvent::placeMetaCall (this=0xa4ee20, object=0x81f4a0) at kernel/qobject.cpp:525
#68 0x00007fc21b639dba in QObject::event (this=0x81f4a0, e=0xa4ee20) at kernel/qobject.cpp:1195
#69 0x00007fc21a975786 in QGraphicsScene::event (this=0x81f4a0, event=0xa4ee20) at graphicsview/qgraphicsscene.cpp:3561
#70 0x00007fc21a1bc684 in QApplicationPrivate::notify_helper (this=0x62a4d0, receiver=0x81f4a0, e=0xa4ee20) at kernel/qapplication.cpp:4550
#71 0x00007fc21a1b9ca8 in QApplication::notify (this=0x7ffff680f230, receiver=0x81f4a0, e=0xa4ee20) at kernel/qapplication.cpp:3932
#72 0x00007fc21c44e125 in KApplication::notify (this=0x7ffff680f230, receiver=0x81f4a0, event=0xa4ee20) at /home/kde-4.8/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#73 0x00007fc21b620b99 in QCoreApplication::notifyInternal (this=0x7ffff680f230, receiver=0x81f4a0, event=0xa4ee20) at kernel/qcoreapplication.cpp:876
#74 0x00007fc21b6246ab in QCoreApplication::sendEvent (receiver=0x81f4a0, event=0xa4ee20) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#75 0x00007fc21b621bb4 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x60d660) at kernel/qcoreapplication.cpp:1500
#76 0x00007fc21b6217d5 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1393
#77 0x00007fc21b65deb1 in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#78 0x00007fc21b65ce6b in postEventSourceDispatch (s=0x62d9c0) at kernel/qeventdispatcher_glib.cpp:279
#79 0x00007fc215253bd3 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#80 0x00007fc2152543b0 in ?? () from /lib64/libglib-2.0.so.0
#81 0x00007fc215254650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#82 0x00007fc21b65d759 in QEventDispatcherGlib::processEvents (this=0x60cf20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#83 0x00007fc21a295b7a in QGuiEventDispatcherGlib::processEvents (this=0x60cf20, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#84 0x00007fc21b61e3fe in QEventLoop::processEvents (this=0x7ffff680f1a0, flags=...) at kernel/qeventloop.cpp:149
#85 0x00007fc21b61e588 in QEventLoop::exec (this=0x7ffff680f1a0, flags=...) at kernel/qeventloop.cpp:204
#86 0x00007fc21b62121a in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#87 0x00007fc21a1b9892 in QApplication::exec () at kernel/qapplication.cpp:3811
#88 0x00007fc21dbc731a in kdemain (argc=1, argv=0x7ffff680f7a8) at /home/kde-4.8/kde/src/KDE/kde-baseapps/dolphin/src/main.cpp:91
#89 0x0000000000400906 in main (argc=1, argv=0x7ffff680f7a8) at /home/kde-4.8/kde/build/KDE/kde-baseapps/dolphin/src/dolphin_dummy.cpp:3

Reported using DrKonqi
Comment 1 Peter Penz 2012-02-21 15:49:28 UTC
Git commit abd23c29110560dd893e0dc2b542fd04e1845a0f by Peter Penz.
Committed on 21/02/2012 at 16:46.
Pushed by ppenz into branch 'KDE/4.8'.

Don't trigger assert when switching to details-view

If the visible roles of the details-view are equal to the visible roles
of other views, then switching to the details-view will trigger an
assert because the invisible roles don't get updated.

Thanks to Frank Reininghaus for the detailed analyses!

In the context of this fix optimizations have been done when switching
view-modes: The "don't-animate-workaround" could be removed.
FIXED-IN: 4.8.1

M  +9    -5    dolphin/src/kitemviews/kfileitemlistview.cpp
M  +0    -3    dolphin/src/kitemviews/kfileitemlistview.h
M  +3    -0    dolphin/src/kitemviews/kfileitemmodel.cpp
M  +7    -18   dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp
M  +10   -1    dolphin/src/kitemviews/kitemlistview.cpp
M  +9    -1    dolphin/src/kitemviews/kitemlistview.h
M  +0    -17   dolphin/src/views/dolphinview.cpp

http://commits.kde.org/kde-baseapps/abd23c29110560dd893e0dc2b542fd04e1845a0f
Comment 2 Peter Penz 2012-02-21 15:50:18 UTC
Git commit ac818a140ed36fe0322f4004247c5dfd51c05f49 by Peter Penz.
Committed on 21/02/2012 at 16:46.
Pushed by ppenz into branch 'master'.

Don't trigger assert when switching to details-view

If the visible roles of the details-view are equal to the visible roles
of other views, then switching to the details-view will trigger an
assert because the invisible roles don't get updated.

Thanks to Frank Reininghaus for the detailed analyses!

In the context of this fix optimizations have been done when switching
view-modes: The "don't-animate-workaround" could be removed.
FIXED-IN: 4.8.1

M  +9    -5    dolphin/src/kitemviews/kfileitemlistview.cpp
M  +0    -3    dolphin/src/kitemviews/kfileitemlistview.h
M  +3    -0    dolphin/src/kitemviews/kfileitemmodel.cpp
M  +7    -18   dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp
M  +10   -1    dolphin/src/kitemviews/kitemlistview.cpp
M  +9    -1    dolphin/src/kitemviews/kitemlistview.h
M  +0    -17   dolphin/src/views/dolphinview.cpp

http://commits.kde.org/kde-baseapps/ac818a140ed36fe0322f4004247c5dfd51c05f49
Comment 3 Frank Reininghaus 2013-04-25 20:46:20 UTC
*** Bug 291631 has been marked as a duplicate of this bug. ***