Bug 226738 - picture frame crashes when adding a folder without pictures
Summary: picture frame crashes when adding a folder without pictures
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Plasma
Component: widget-frame (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Anne-Marie Mahfouf
URL:
Keywords:
: 238503 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-02-13 23:30 UTC by Micha
Modified: 2010-05-22 18:55 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Micha 2010-02-13 23:30:49 UTC
Version:            (using KDE 4.4.0)
Compiler:          gcc Kubuntu ppa-backport packages 
OS:                Linux
Installed from:    Ubuntu Packages

The Picture Frame widget crashes plasma-desktop when selecting the slideshow with a folder that does not contain pictures.
Comment 1 Troy Unrau 2010-02-13 23:34:20 UTC
Confirm on slackware w/4.4.0 - was able to crash plasma by dragging empty folder onto widget.
Comment 2 Anne-Marie Mahfouf 2010-02-14 14:28:57 UTC
backtrace:
----------
Application: Plasma Workspace (plasma-desktop), signal: Aborted
[KCrash Handler]
#6  0xffffe424 in __kernel_vsyscall ()
#7  0xb5879c00 in raise () from /lib/i686/libc.so.6
#8  0xb587b668 in abort () from /lib/i686/libc.so.6
#9  0xb5b4ab72 in qt_message_output (msgType=QtFatalMsg, buf=0xaaa9a80 "ASSERT: \"!isEmpty()\" in file /usr/local/trunk-src/kde-qt/include/QtCore/../../src/corelib/tools/qlist.h, line 263")
    at global/qglobal.cpp:2250
#10 0xb5b4ad7c in qt_message (msgType=QtFatalMsg, msg=0xb5d07a94 "ASSERT: \"%s\" in file %s, line %d", ap=0xbfc09254 "ÀÇ\025šÜÆ\025š\a\001") at global/qglobal.cpp:2296
#11 0xb5b4adea in qFatal (msg=0xb5d07a94 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2479
#12 0xb5b4b03e in qt_assert (assertion=0xa815c7c0 "!isEmpty()", file=0xa815c6dc "/usr/local/trunk-src/kde-qt/include/QtCore/../../src/corelib/tools/qlist.h", line=263) at global/qglobal.cpp:2013
#13 0xa8154f7d in QList<int>::first (this=0xabf5a90) at /usr/local/trunk-src/kde-qt/include/QtCore/../../src/corelib/tools/qlist.h:263
#14 0xa8155095 in QList<int>::takeFirst (this=0xabf5a90) at /usr/local/trunk-src/kde-qt/include/QtCore/../../src/corelib/tools/qlist.h:460
#15 0xa815512c in KRandomSequence::randomize<int> (this=0xbfc09324, list=@0xabf5a90) at /usr/local/trunk/include/KDE/../krandomsequence.h:112
#16 0xa8153ced in SlideShow::setDirs (this=0xabf5a78, slideShowPath=@0xa60398c, recursive=false) at /usr/local/trunk-src/kdeplasma-addons/applets/frame/slideshow.cpp:70
#17 0xa814d665 in Frame::initSlideShow (this=0xa603948) at /usr/local/trunk-src/kdeplasma-addons/applets/frame/frame.cpp:554
#18 0xa814dc57 in Frame::dropEvent (this=0xa603948, event=0xbfc09c68) at /usr/local/trunk-src/kdeplasma-addons/applets/frame/frame.cpp:605
#19 0xb677b2ba in QGraphicsItem::sceneEvent (this=0xa603950, event=0xbfc09c68) at graphicsview/qgraphicsitem.cpp:6383
#20 0xb67dab5d in QGraphicsWidget::sceneEvent (this=0xa603948, event=0xbfc09c68) at graphicsview/qgraphicswidget.cpp:1129
#21 0xb67a2717 in QGraphicsScenePrivate::sendEvent (this=0xa13b178, item=0xa603950, event=0xbfc09c68) at graphicsview/qgraphicsscene.cpp:1158
#22 0xb67a3299 in QGraphicsScenePrivate::sendDragDropEvent (this=0xa13b178, item=0xa603950, dragDropEvent=0xbfc09c68) at graphicsview/qgraphicsscene.cpp:1187
#23 0xb67a32e0 in QGraphicsScene::dropEvent (this=0xa1358f8, event=0xbfc09c68) at graphicsview/qgraphicsscene.cpp:3666
#24 0xb67aafb5 in QGraphicsScene::event (this=0xa1358f8, event=0xbfc09c68) at graphicsview/qgraphicsscene.cpp:3324
#25 0xb5fca096 in QApplicationPrivate::notify_helper (this=0xa01eff0, receiver=0xa1358f8, e=0xbfc09c68) at kernel/qapplication.cpp:4298
#26 0xb5fca508 in QApplication::notify (this=0xa014268, receiver=0xa1358f8, e=0xbfc09c68) at kernel/qapplication.cpp:3702
#27 0xb70fa067 in KApplication::notify (this=0xa014268, receiver=0xa1358f8, event=0xbfc09c68) at /usr/local/trunk-src/kdelibs/kdeui/kernel/kapplication.cpp:302
#28 0xb5c80cb0 in QCoreApplication::notifyInternal (this=0xa014268, receiver=0xa1358f8, event=0xbfc09c68) at kernel/qcoreapplication.cpp:704
#29 0xb5fc704f in QCoreApplication::sendEvent (receiver=0xa1358f8, event=0xbfc09c68) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#30 0xb67d1e1a in QGraphicsView::dropEvent (this=0xa628f40, event=0xbfc0a56c) at graphicsview/qgraphicsview.cpp:2834
#31 0xb6048e4c in QWidget::event (this=0xa628f40, event=0xbfc0a56c) at kernel/qwidget.cpp:8168
#32 0xb64fbf2a in QFrame::event (this=0xa628f40, e=0xbfc0a56c) at widgets/qframe.cpp:557
#33 0xb65b31df in QAbstractScrollArea::viewportEvent (this=0xa628f40, e=0xbfc0a56c) at widgets/qabstractscrollarea.cpp:1036
#34 0xb67d7e3e in QGraphicsView::viewportEvent (this=0xa628f40, event=0xbfc0a56c) at graphicsview/qgraphicsview.cpp:2788
#35 0xb65b6724 in QAbstractScrollAreaPrivate::viewportEvent (this=0xa629508, event=0xbfc0a56c) at widgets/qabstractscrollarea_p.h:100
#36 0xb65b6752 in QAbstractScrollAreaFilter::eventFilter (this=0xa62a5f8, o=0xa6899b8, e=0xbfc0a56c) at widgets/qabstractscrollarea_p.h:116
#37 0xb5c7e76e in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0xa01eff0, receiver=0xa6899b8, event=0xbfc0a56c) at kernel/qcoreapplication.cpp:819
#38 0xb5fca073 in QApplicationPrivate::notify_helper (this=0xa01eff0, receiver=0xa6899b8, e=0xbfc0a56c) at kernel/qapplication.cpp:4294
#39 0xb5fcc395 in QApplication::notify (this=0xa014268, receiver=0xa6899b8, e=0xbfc0a56c) at kernel/qapplication.cpp:4106
#40 0xb70fa067 in KApplication::notify (this=0xa014268, receiver=0xa6899b8, event=0xbfc0a56c) at /usr/local/trunk-src/kdelibs/kdeui/kernel/kapplication.cpp:302
#41 0xb5c80cb0 in QCoreApplication::notifyInternal (this=0xa014268, receiver=0xa6899b8, event=0xbfc0a56c) at kernel/qcoreapplication.cpp:704
#42 0xb5fc704f in QCoreApplication::sendEvent (receiver=0xa6899b8, event=0xbfc0a56c) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#43 0xb609649f in QX11Data::xdndHandleDrop (this=0xa022ab0, xe=0xbfc0ab00, passive=false) at kernel/qdnd_x11.cpp:1164
#44 0xb6074838 in QApplication::x11ClientMessage (this=0xa014268, w=0xa628f40, event=0xbfc0ab00, passive_only=false) at kernel/qapplication_x11.cpp:3088
#45 0xb6089e58 in QApplication::x11ProcessEvent (this=0xa014268, event=0xbfc0ab00) at kernel/qapplication_x11.cpp:3633
#46 0xb60bc51d in x11EventSourceDispatch (s=0xa021d18, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#47 0xb40577ca in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#48 0xb405aee8 in ?? () from /usr/lib/libglib-2.0.so.0
#49 0xb405b0a8 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#50 0xb5cbb1ba in QEventDispatcherGlib::processEvents (this=0x9ffdf40, flags={i = -1077891880}) at kernel/qeventdispatcher_glib.cpp:412
#51 0xb60bbbb2 in QGuiEventDispatcherGlib::processEvents (this=0x9ffdf40, flags={i = -1077891832}) at kernel/qguieventdispatcher_glib.cpp:204
#52 0xb5c7d026 in QEventLoop::processEvents (this=0xbfc0ada8, flags={i = -1077891756}) at kernel/qeventloop.cpp:149
#53 0xb5c7d298 in QEventLoop::exec (this=0xbfc0ada8, flags={i = -1077891664}) at kernel/qeventloop.cpp:201
#54 0xb5c81605 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#55 0xb5fcd1f8 in QApplication::exec () at kernel/qapplication.cpp:3577
#56 0xb7eb8ff1 in kdemain (argc=1, argv=0xbfc0af94) at /usr/local/trunk-src/kdebase/workspace/plasma/desktop/shell/main.cpp:118
#57 0x08048746 in main (argc=) at /home/annma/build/kdebase/workspace/plasma/desktop/shell/plasma-desktop_dummy.cpp:3
Comment 3 Anne-Marie Mahfouf 2010-02-14 16:30:03 UTC
I submitted a patch to kde reviewboard for KRandomSequence which soleves this crash but I am not sure if it's the right thing to do.
I also experiment this kind of crash with KHangMan so the patch would solve 2 crashes if accepted.

http://reviewboard.kde.org/r/2915/
Comment 4 Anne-Marie Mahfouf 2010-02-15 10:19:52 UTC
*** Bug 226898 has been marked as a duplicate of this bug. ***
Comment 5 Anne-Marie Mahfouf 2010-02-16 16:23:47 UTC
SVN commit 1091033 by annma:

prevents to randomize an empty list, thanks Jaime for reviewing
Hannes, my previous patch was wrong and that one is correct
will backport to branch
BUG=226898
BUG=226738


 M  +7 -6      krandomsequence.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1091033
Comment 6 Christoph Feck 2010-05-22 18:55:00 UTC
*** Bug 238503 has been marked as a duplicate of this bug. ***