Bug 241458 - QuickAccess plasmoid crashes 4.5b2 Plasma workspace every time its clicked
Summary: QuickAccess plasmoid crashes 4.5b2 Plasma workspace every time its clicked
Status: RESOLVED FIXED
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 242055 242628 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-06-11 19:16 UTC by Kubuntiac
Modified: 2010-06-26 10:07 UTC (History)
10 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (8.69 KB, text/plain)
2010-06-16 00:31 UTC, m.wege
Details
New crash information added by DrKonqi (8.20 KB, text/plain)
2010-06-21 22:07 UTC, Xosé
Details
New crash information added by DrKonqi (8.49 KB, text/plain)
2010-06-26 10:07 UTC, Fabrizio
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kubuntiac 2010-06-11 19:16:34 UTC
Version:           unspecified (using Devel) 
OS:                Linux

Every time I click on the QuickAccess plasmoid, it opens looking like this:
http://img580.imageshack.us/img580/310/quickaccess.png

and then instantly the whole plasma workspace crashes (going black for an instant and then restarting, although without triggering DrKonqi).

I've tried removing and reinstalling the plasmoid and there has already been an update to the plasmoid since the problem appeared.

I'm using:
Kubuntu Lucid AMD 64
KDE 4.5 Beta 2 (problem existed with B1 as well, but not 4.4)
QT 4.7.0~beta1+git20100522

Reproducible: Always

Steps to Reproduce:
1. Click on quickaccess plasmoid

Actual Results:  
Plasma workspace crashes

Expected Results:  
Plasma workspace doesn't crash

I like puppies.
Comment 1 Marco Martin 2010-06-11 21:33:09 UTC
the bad look is due to svg cache issues
for the crash, can you provide a backtrace?
Comment 2 Aaron J. Seigo 2010-06-11 22:13:11 UTC
if the backtrace ends up in quickaccess, then it's not a plasma bug .. quickaccess is a third party add-on.
Comment 3 Nicolas L. 2010-06-14 23:49:23 UTC
please provide the backtrace
Comment 4 Kubuntiac 2010-06-15 04:14:14 UTC
Can you point me to somewhere that could tell me how to run a backtrace on plasma-desktop / th quick access plasmoid.

I tried killing plasma-desktop and then doing "run plasma-desktop" from inside gdb but it just says:
(gdb) run plasma-desktop
Starting program:  plasma-desktop
No executable file specified.
Use the "file" or "exec-file" command.
Comment 5 Aurelien Gateau 2010-06-15 14:48:34 UTC
(In reply to comment #4)
> Can you point me to somewhere that could tell me how to run a backtrace on
> plasma-desktop / th quick access plasmoid.
> 
> I tried killing plasma-desktop and then doing "run plasma-desktop" from inside
> gdb but it just says:
> (gdb) run plasma-desktop
> Starting program:  plasma-desktop
> No executable file specified.
> Use the "file" or "exec-file" command.

Plasma forks itself at startup. To run it into gdb, start gdb like this:

# gdb --args plasma-desktop --noargs
Comment 6 Kubuntiac 2010-06-15 19:30:55 UTC
Ok, I had to remove the "--noargs" at the end or gdb just gave me an error, but here's what I've got:


Application: Plasma Workspace (plasma-desktop), signal: Segmentation fault
[Current thread is 1 (Thread 0x7ffff7fb2780 (LWP 28528))]

Thread 2 (Thread 0x7fffd63d2710 (LWP 28530)):
#0  0x00007ffff4ba13f5 in __pthread_mutex_lock (mutex=0xe88fe8) at pthread_mutex_lock.c:61
#1  0x00007fffec555466 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007fffec5558fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007ffff4f4e9c6 in QEventDispatcherGlib::processEvents (this=0xe46a60, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#4  0x00007ffff4f215b2 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007ffff4f2198c in QEventLoop::exec (this=0x7fffd63d1d90, flags=) at kernel/qeventloop.cpp:201
#6  0x00007ffff4e2d1cd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#7  0x00007ffff4f014d8 in QInotifyFileSystemWatcherEngine::run (this=0xe46990) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007ffff4e3014e in QThreadPrivate::start (arg=0xe46990) at thread/qthread_unix.cpp:266
#9  0x00007ffff4b9e9ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007ffff78cc6cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ffff7fb2780 (LWP 28528)):
[KCrash Handler]
#6  KFileItemDelegate::Private::subtractMargin (this=0x12107e0, option=...) at ../../kio/kio/kfileitemdelegate.cpp:198
#7  KFileItemDelegate::Private::iconPosition (this=0x12107e0, option=...) at ../../kio/kio/kfileitemdelegate.cpp:1158
#8  0x00007ffff6f7eeb2 in KFileItemDelegate::paint (this=0x1369970, painter=<value optimized out>, option=..., index=...) at ../../kio/kio/kfileitemdelegate.cpp:1247
#9  0x00007fffdb1100ca in ?? () from /usr/lib/kde4/plasma_applet_quickaccess.so
#10 0x00007fffdb110388 in ?? () from /usr/lib/kde4/plasma_applet_quickaccess.so
#11 0x00007ffff40e4d7e in QWidget::event (this=0x134fb30, event=0x7fffffffc530) at kernel/qwidget.cpp:8243
#12 0x00007ffff44a36a6 in QFrame::event (this=0x134fb30, e=0x7fffffffc530) at widgets/qframe.cpp:557
#13 0x00007ffff45d94cb in QAbstractItemView::viewportEvent (this=0x134fb30, event=0x7fffffffc530) at itemviews/qabstractitemview.cpp:1619
#14 0x00007fffdb10fd0d in ?? () from /usr/lib/kde4/plasma_applet_quickaccess.so
#15 0x00007ffff4f220a7 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0x12138d0, event=0x7fffffffc530) at kernel/qcoreapplication.cpp:847
#16 0x00007ffff408f81c in QApplicationPrivate::notify_helper (this=0x6424d0, receiver=0x12138d0, e=0x7fffffffc530) at kernel/qapplication.cpp:4354
#17 0x00007ffff40952ed in QApplication::notify (this=0x62d3c0, receiver=0x12138d0, e=0x7fffffffc530) at kernel/qapplication.cpp:4241
#18 0x00007ffff5bd6f16 in KApplication::notify (this=0x62d3c0, receiver=0x12138d0, event=0x7fffffffc530) at ../../kdeui/kernel/kapplication.cpp:302
#19 0x00007ffff4f2287c in QCoreApplication::notifyInternal (this=0x62d3c0, receiver=0x12138d0, event=0x7fffffffc530) at kernel/qcoreapplication.cpp:732
#20 0x00007ffff40eb52d in QCoreApplication::sendSpontaneousEvent (this=0x134fb70, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, 
    backingStore=0x13513c0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#21 QWidgetPrivate::drawWidget (this=0x134fb70, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x13513c0)
    at kernel/qwidget.cpp:5330
#22 0x00007ffff40ec1c8 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=0, rgn=<value optimized out>, 
    offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x13513c0) at kernel/qwidget.cpp:5537
#23 0x00007ffff40eb28a in QWidgetPrivate::drawWidget (this=0x12134a0, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, 
    backingStore=0x13513c0) at kernel/qwidget.cpp:5383
#24 0x00007ffff40ec1c8 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=9, rgn=<value optimized out>, 
    offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x13513c0) at kernel/qwidget.cpp:5537
#25 0x00007ffff40eb28a in QWidgetPrivate::drawWidget (this=0x1358b90, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, 
    backingStore=0x13513c0) at kernel/qwidget.cpp:5383
#26 0x00007ffff42b8b98 in QWidgetBackingStore::sync (this=0x13513c0) at painting/qbackingstore.cpp:1328
#27 0x00007ffff40de870 in QWidgetPrivate::syncBackingStore (this=0x1358b90) at kernel/qwidget.cpp:1720
#28 0x00007ffff40e544b in QWidget::event (this=0x13605c0, event=0x1450470) at kernel/qwidget.cpp:8390
#29 0x00007ffff7418700 in Plasma::Dialog::event (this=0x13605c0, event=0x1450470) at ../../plasma/dialog.cpp:589
#30 0x00007ffff408f84c in QApplicationPrivate::notify_helper (this=0x6424d0, receiver=0x13605c0, e=0x1450470) at kernel/qapplication.cpp:4358
#31 0x00007ffff40952ed in QApplication::notify (this=0x62d3c0, receiver=0x13605c0, e=0x1450470) at kernel/qapplication.cpp:4241
#32 0x00007ffff5bd6f16 in KApplication::notify (this=0x62d3c0, receiver=0x13605c0, event=0x1450470) at ../../kdeui/kernel/kapplication.cpp:302
#33 0x00007ffff4f2287c in QCoreApplication::notifyInternal (this=0x62d3c0, receiver=0x13605c0, event=0x1450470) at kernel/qcoreapplication.cpp:732
#34 0x00007ffff4f257a2 in QCoreApplication::sendEvent (receiver=0x0, event_type=<value optimized out>, data=0x612090) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#35 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0x612090) at kernel/qcoreapplication.cpp:1373
#36 0x00007ffff4f4ee33 in QCoreApplication::sendPostedEvents (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#37 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:276
#38 0x00007fffec5518c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#39 0x00007fffec555748 in ?? () from /lib/libglib-2.0.so.0
#40 0x00007fffec5558fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#41 0x00007ffff4f4e973 in QEventDispatcherGlib::processEvents (this=0x611790, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#42 0x00007ffff4140dee in QGuiEventDispatcherGlib::processEvents (this=0x12107e0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#43 0x00007ffff4f215b2 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#44 0x00007ffff4f2198c in QEventLoop::exec (this=0x7fffffffde30, flags=) at kernel/qeventloop.cpp:201
#45 0x00007ffff4f25a3b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#46 0x00007ffff7ba46f6 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at ../../../../plasma/desktop/shell/main.cpp:118
#47 0x00007ffff7804c4d in __libc_start_main (main=<value optimized out>, argc=<value optimized out>, ubp_av=<value optimized out>, init=<value optimized out>, fini=<value optimized out>, 
    rtld_fini=<value optimized out>, stack_end=0x7fffffffe1f8) at libc-start.c:226
#48 0x00000000004006c9 in _start ()
Comment 7 Aaron J. Seigo 2010-06-15 20:33:49 UTC
crash in either kfileitemdelegate (though that should then be seen in dolphin and the file dialogs) or the quickaccess plasmoid; as we've seen this before for the quickaccess plasmoid, that's the most likely. in any case, this isn't a plasma bug. thanks for the follow up.
Comment 8 m.wege 2010-06-16 00:31:29 UTC
Created attachment 48051 [details]
New crash information added by DrKonqi

plasma-desktop (0.3) on KDE Platform 4.4.85 (KDE 4.4.85 (KDE 4.5 Beta2)) using Qt 4.7.0

- What I was doing when the application crashed:
Started quick access plugin, then plasma crashed.

-- Backtrace (Reduced):
#7  KFileItemDelegate::Private::subtractMargin (this=0xd28b240, option=...) at ../../kio/kio/kfileitemdelegate.cpp:198
#8  KFileItemDelegate::Private::iconPosition (this=0xd28b240, option=...) at ../../kio/kio/kfileitemdelegate.cpp:1158
#9  0xb714a31a in KFileItemDelegate::paint (this=0xd28b1f8, painter=0xbfea98ac, option=..., index=...) at ../../kio/kio/kfileitemdelegate.cpp:1247
[...]
[...]
#12 0xb5b7acd6 in QWidget::event (this=0xd293478, event=0xbfeaa194) at kernel/qwidget.cpp:8243
#13 0xb5f92773 in QFrame::event (this=0xd293478, e=0xbfeaa194) at widgets/qframe.cpp:557
Comment 9 Beat Wolf 2010-06-18 11:36:52 UTC
*** Bug 242055 has been marked as a duplicate of this bug. ***
Comment 10 Aurelien Gateau 2010-06-20 19:08:08 UTC
I think the bug is in KFileItemDelegate. Here is a review request for a fix: http://reviewboard.kde.org/r/4416/
Comment 11 Xosé 2010-06-21 22:07:49 UTC
Created attachment 48205 [details]
New crash information added by DrKonqi

plasma-desktop (0.3) on KDE Platform 4.4.80 (KDE 4.4.80 (KDE 4.5 Beta1)) using Qt 4.7.0

- What I was doing when the application crashed: I clicked on the Quick Acces plasmoid on the panel.

- Unusual behavior I noticed: Plasma crashed.

-- Backtrace (Reduced):
#6  KFileItemDelegate::Private::subtractMargin (this=0x2e1aa90, option=...) at ../../kio/kio/kfileitemdelegate.cpp:198
#7  KFileItemDelegate::Private::iconPosition (this=0x2e1aa90, option=...) at ../../kio/kio/kfileitemdelegate.cpp:1158
#8  0x00007f145ba6f552 in KFileItemDelegate::paint (this=0x2d71f10, painter=<value optimized out>, option=..., index=...) at ../../kio/kio/kfileitemdelegate.cpp:1247
[...]
[...]
#11 0x00007f1458b96d7e in QWidget::event (this=0x277fd90, event=0x7fff3f2a82e0) at kernel/qwidget.cpp:8243
#12 0x00007f1458f556a6 in QFrame::event (this=0x277fd90, e=0x7fff3f2a82e0) at widgets/qframe.cpp:557
Comment 12 Aurelien Gateau 2010-06-21 23:27:47 UTC
SVN commit 1140966 by gateau:

Set active margins earlier

Avoid crash when calling iconPosition()

BUG:241458

 M  +1 -2      kfileitemdelegate.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1140966
Comment 13 Marco Martin 2010-06-23 21:00:51 UTC
*** Bug 242628 has been marked as a duplicate of this bug. ***
Comment 14 Fabrizio 2010-06-26 10:07:15 UTC
Created attachment 48344 [details]
New crash information added by DrKonqi

plasma-desktop (0.3) on KDE Platform 4.4.85 (KDE 4.4.85 (KDE 4.5 Beta2)) using Qt 4.7.0

- What I was doing when the application crashed:
	I click on quick access applet, it sows an empty list and crashes.
- Unusual behavior I noticed:
	My configuration of desktop (like wallpaper, applets..) are stored in plasmarc... but it isn't load at the start of kde.

-- Backtrace (Reduced):
#7  KFileItemDelegate::Private::subtractMargin (this=0xa7e17b0, option=...) at ../../kio/kio/kfileitemdelegate.cpp:198
#8  KFileItemDelegate::Private::iconPosition (this=0xa7e17b0, option=...) at ../../kio/kio/kfileitemdelegate.cpp:1158
#9  0xb710331a in KFileItemDelegate::paint (this=0xa5fc758, painter=0xbfad400c, option=..., index=...) at ../../kio/kio/kfileitemdelegate.cpp:1247
[...]
[...]
#12 0xb5b33cd6 in QWidget::event (this=0xa7c09c0, event=0xbfad48f4) at kernel/qwidget.cpp:8243
#13 0xb5f4b773 in QFrame::event (this=0xa7c09c0, e=0xbfad48f4) at widgets/qframe.cpp:557