Bug 301507

Summary: plasma-desktop crashes when applying battery widget settings
Product: [Unmaintained] plasma4 Reporter: Marc Schiffbauer <mschiff>
Component: widget-batteryAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: annma, gortab, l.tomalak+bugskde, m.wege, stevebm
Priority: NOR    
Version: 4.8.90 (beta2)   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 4.9
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Marc Schiffbauer 2012-06-09 12:59:23 UTC
Application: plasma-desktop (0.4)
KDE Platform Version: 4.8.90 (4.8.90) (Compiled from sources)
Qt Version: 4.8.2
Operating System: Linux 3.3.7-gentoo x86_64
Distribution: "NAME=Gentoo"

-- Information about the crash:
- What I was doing when the application crashed:
right clikc on battery widget, change e.g. setting to show percentage, click apply, kaboom

The crash can be reproduced every time.

-- Backtrace:
Application: Plasma-Desktop-Umgebung (kdeinit4), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f2ed452e780 (LWP 9212))]

Thread 3 (Thread 0x7f2eb27b5700 (LWP 9213)):
#0  0x00007f2ed2d3fdcc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f2ec5e68892 in ?? () from /usr/lib64/qt4/libQtScript.so.4
#2  0x00007f2ec5e688c9 in ?? () from /usr/lib64/qt4/libQtScript.so.4
#3  0x00007f2ec21a1b74 in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f2ed2d3bec6 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f2ed1ac29bd in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f2eb136c700 (LWP 9214)):
#0  0x00007f2ed1ab9da3 in poll () from /lib64/libc.so.6
#1  0x00007f2ece79c486 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f2ece79c5b4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f2ed30fe4e6 in QEventDispatcherGlib::processEvents (this=0x7f2eac0008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f2ed30ce2a2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f2ed30ce4f7 in QEventLoop::exec (this=0x7f2eb136bd10, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f2ed2fcef27 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007f2ed30ae25f in QInotifyFileSystemWatcherEngine::run (this=0x198b780) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f2ed2fd1f2b in QThreadPrivate::start (arg=0x198b780) at thread/qthread_unix.cpp:307
#9  0x00007f2ec21a1b74 in ?? () from /usr/lib64/libGL.so.1
#10 0x00007f2ed2d3bec6 in start_thread () from /lib64/libpthread.so.0
#11 0x00007f2ed1ac29bd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f2ed452e780 (LWP 9212)):
[KCrash Handler]
#6  0x00007f2ed1a11b15 in raise () from /lib64/libc.so.6
#7  0x00007f2ed1a12f8b in abort () from /lib64/libc.so.6
#8  0x00007f2ed2fc76c4 in qt_message_output (msgType=<optimized out>, buf=<optimized out>) at global/qglobal.cpp:2260
#9  0x00007f2ed2fc783f in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7f2ed3132998 "ASSERT failure in %s: \"%s\", file %s, line %d", ap=0x7fff4581dc08) at global/qglobal.cpp:2306
#10 0x00007f2ed2fc79ec in qFatal (msg=<optimized out>) at global/qglobal.cpp:2489
#11 0x00007f2ed34e57af in KConfigGroup::writeEntry (this=0x7fff4581e280, key=0x7f2e8e5af30e "suspendType", value=..., flags=...) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kdecore/config/kconfiggroup.cpp:895
#12 0x00007f2ed34fa387 in KConfigGroup::writeCheck<unsigned int> (this=0x7fff4581e280, key=0x7f2e8e5af30e "suspendType", value=@0x7fff4581e2d8: 8, pFlags=...) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kdecore/config/kconfiggroup.h:752
#13 0x00007f2ec7e46d28 in KConfigGroup::writeEntry<unsigned int> (this=0x7fff4581e280, key=0x7f2e8e5af30e "suspendType", value=@0x7fff4581e2d8: 8, pFlags=...) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kdecore/config/kconfiggroup.h:426
#14 0x00007f2e8e5ade19 in ?? () from /usr/lib64/kde4/powerdevilsuspendsessionaction_config.so
#15 0x00007f2e8f20fb4e in ActionEditWidget::save() () from /usr/lib64/libpowerdevilconfigcommonprivate.so.4
#16 0x00007f2e8f423dd9 in ?? () from /usr/lib64/kde4/kcm_powerdevilprofilesconfig.so
#17 0x00007f2ed3f4dfec in KCModule::qt_static_metacall (_o=0x135ea20, _c=<optimized out>, _id=4, _a=0x7fff4581e500) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90_build/kdeui/kcmodule.moc:67
#18 0x00007f2ed30e3409 in QMetaObject::activate (sender=0x42ddc80, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3547
#19 0x00007f2ed3e1bace in KDialog::slotButtonClicked (this=0x42ddc80, button=8) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kdeui/dialogs/kdialog.cpp:888
#20 0x00007f2ed3e1bd3d in KDialog::qt_static_metacall (_o=0x42ddc80, _c=<optimized out>, _id=33, _a=0x7fff4581e760) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90_build/kdeui/kdialog.moc:167
#21 0x00007f2ed30e3409 in QMetaObject::activate (sender=0x421e730, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff4581e760) at kernel/qobject.cpp:3547
#22 0x00007f2ed30eac7e in QSignalMapper::mapped (this=<optimized out>, _t1=8) at .moc/release-shared/moc_qsignalmapper.cpp:115
#23 0x00007f2ed30eb21b in QSignalMapper::map (this=0x421e730, sender=0x4257920) at kernel/qsignalmapper.cpp:266
#24 0x00007f2ed30e3409 in QMetaObject::activate (sender=0x4257920, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff4581e910) at kernel/qobject.cpp:3547
#25 0x00007f2ed28cc742 in QAbstractButton::clicked (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:220
#26 0x00007f2ed260a2ce in QAbstractButtonPrivate::emitClicked (this=<optimized out>) at widgets/qabstractbutton.cpp:548
#27 0x00007f2ed260b5fb in QAbstractButtonPrivate::click (this=0x421e930) at widgets/qabstractbutton.cpp:541
#28 0x00007f2ed260b86c in QAbstractButton::mouseReleaseEvent (this=0x4257920, e=0x7fff4581f3f0) at widgets/qabstractbutton.cpp:1123
#29 0x00007f2ed22b0039 in QWidget::event (this=0x4257920, event=0x7fff4581f3f0) at kernel/qwidget.cpp:8371
#30 0x00007f2ed225f6a4 in notify_helper (e=0x7fff4581f3f0, receiver=0x4257920, this=0x12da760) at kernel/qapplication.cpp:4551
#31 QApplicationPrivate::notify_helper (this=0x12da760, receiver=0x4257920, e=0x7fff4581f3f0) at kernel/qapplication.cpp:4523
#32 0x00007f2ed2264dd9 in QApplication::notify (this=<optimized out>, receiver=0x4257920, e=0x7fff4581f3f0) at kernel/qapplication.cpp:4094
#33 0x00007f2ed3eba7ed in KApplication::notify (this=0x11a4d40, receiver=0x4257920, event=0x7fff4581f3f0) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kdeui/kernel/kapplication.cpp:311
#34 0x00007f2ed30cf74c in QCoreApplication::notifyInternal (this=0x11a4d40, receiver=0x4257920, event=0x7fff4581f3f0) at kernel/qcoreapplication.cpp:915
#35 0x00007f2ed2260662 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#36 QApplicationPrivate::sendMouseEvent (receiver=0x4257920, event=0x7fff4581f3f0, alienWidget=0x4257920, nativeWidget=0x42ddc80, buttonDown=0x4257920, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3162
#37 0x00007f2ed22dc2c8 in QETWidget::translateMouseEvent (this=0x42ddc80, event=<optimized out>) at kernel/qapplication_x11.cpp:4502
#38 0x00007f2ed22db0da in QApplication::x11ProcessEvent (this=0x11a4d40, event=0x7fff4581fb10) at kernel/qapplication_x11.cpp:3625
#39 0x00007f2ed2302afa in x11EventSourceDispatch (s=0x12dbb70, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#40 0x00007f2ece79c1a3 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#41 0x00007f2ece79c4f0 in ?? () from /usr/lib64/libglib-2.0.so.0
#42 0x00007f2ece79c5b4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#43 0x00007f2ed30fe47f in QEventDispatcherGlib::processEvents (this=0x118a090, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#44 0x00007f2ed230279e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#45 0x00007f2ed30ce2a2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#46 0x00007f2ed30ce4f7 in QEventLoop::exec (this=0x7fff4581fea0, flags=...) at kernel/qeventloop.cpp:204
#47 0x00007f2ed30d32c5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#48 0x00007f2ebd510565 in kdemain () from /usr/lib64/libkdeinit4_plasma-desktop.so
#49 0x0000000000408596 in launch (argc=1, _name=0x11cc1b8 "/usr/bin/plasma-desktop", args=<optimized out>, cwd=0x0, envc=<optimized out>, envs=<optimized out>, reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0x40c5b9 "0") at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kinit/kinit.cpp:734
#50 0x00000000004093ec in handle_launcher_request (sock=7, who=<optimized out>) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kinit/kinit.cpp:1226
#51 0x0000000000409870 in handle_requests (waitForPid=0) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kinit/kinit.cpp:1419
#52 0x00000000004055ed in main (argc=2, argv=0x7fff45820cc8, envp=0x7fff45820ce0) at /var/tmp/portage/kde-base/kdelibs-4.8.90/work/kdelibs-4.8.90/kinit/kinit.cpp:1907

Reported using DrKonqi
Comment 1 Anne-Marie Mahfouf 2012-06-09 15:09:51 UTC
Confirmed 

Thread 1 (Thread 0xb28bd760 (LWP 15196)):
[KCrash Handler]
#6  0xb534b8c5 in raise () from /lib/libc.so.6
#7  0xb534d1d5 in abort () from /lib/libc.so.6
#8  0xb614bfe2 in qt_message_output(QtMsgType, char const*) () from /usr/local/master/qt/lib/libQtCore.so.4
#9  0xb614c187 in ?? () from /usr/local/master/qt/lib/libQtCore.so.4
#10 0xb614c299 in qFatal(char const*, ...) () from /usr/local/master/qt/lib/libQtCore.so.4
#11 0xb614c2dc in qt_assert_x(char const*, char const*, char const*, int) () from /usr/local/master/qt/lib/libQtCore.so.4
#12 0xb64e1d54 in KConfigGroup::writeEntry (this=0xbfffd700, key=0xa5b82bb0 "suspendType", value=..., flags=...) at /usr/local/kde-master-src/kdelibs/kdecore/config/kconfiggroup.cpp:895
#13 0xb7f7e6f2 in KConfigGroup::writeCheck<unsigned int> (this=0xbfffd700, key=0xa5b82bb0 "suspendType", value=@0xbfffd6f0, pFlags=...) at /usr/local/master/include/kconfiggroup.h:752
#14 0xb7f7e548 in KConfigGroup::writeEntry<unsigned int> (this=0xbfffd700, key=0xa5b82bb0 "suspendType", value=@0xbfffd6f0, pFlags=...) at /usr/local/master/include/kconfiggroup.h:426
#15 0xa5b810dd in PowerDevil::BundledActions::SuspendSessionConfig::save (this=0x928de40) at /usr/local/kde-master-src/kde-workspace/powerdevil/daemon/actions/bundled/suspendsessionconfig.cpp:53
#16 0xa5be15a0 in ActionEditWidget::save (this=0x928a068) at /usr/local/kde-master-src/kde-workspace/powerdevil/kcmodule/common/actioneditwidget.cpp:158
#17 0xa5bf4240 in EditPage::save (this=0x9220010) at /usr/local/kde-master-src/kde-workspace/powerdevil/kcmodule/profiles/EditPage.cpp:185
#18 0xb6a714eb in KCModule::qt_static_metacall (_o=0x9220010, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfffd89c) at /usr/local/kde-master-src/kdelibs/build/kdeui/kcmodule.moc:67
#19 0xb627c198 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/local/master/qt/lib/libQtCore.so.4
#20 0xb690dd1b in KDialog::applyClicked (this=0x91ceb58) at /usr/local/kde-master-src/kdelibs/build/kdeui/kdialog.moc:260
#21 0xb690c773 in KDialog::slotButtonClicked (this=0x91ceb58, button=8) at /usr/local/kde-master-src/kdelibs/kdeui/dialogs/kdialog.cpp:888
#22 0xb690d9e5 in KDialog::qt_static_metacall (_o=0x91ceb58, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfffda18) at /usr/local/kde-master-src/kdelibs/build/kdeui/kdialog.moc:167
#23 0xb627c198 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/local/master/qt/lib/libQtCore.so.4
#24 0xb62826c3 in QSignalMapper::mapped(int) () from /usr/local/master/qt/lib/libQtCore.so.4
#25 0xb6282924 in QSignalMapper::map(QObject*) () from /usr/local/master/qt/lib/libQtCore.so.4
#26 0xb6282a2e in QSignalMapper::map() () from /usr/local/master/qt/lib/libQtCore.so.4
#27 0xb6282ef8 in ?? () from /usr/local/master/qt/lib/libQtCore.so.4
#28 0xb627c198 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/local/master/qt/lib/libQtCore.so.4
#29 0xb5e50ad9 in QAbstractButton::clicked(bool) () from /usr/local/master/qt/lib/libQtGui.so.4
#30 0xb5b52559 in ?? () from /usr/local/master/qt/lib/libQtGui.so.4
#31 0xb5b53e14 in ?? () from /usr/local/master/qt/lib/libQtGui.so.4
#32 0xb5b540ce in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#33 0xb578a7b4 in QWidget::event(QEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#34 0xb5b5310e in QAbstractButton::event(QEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#35 0xb5bf4992 in QPushButton::event(QEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#36 0xb5730e04 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#37 0xb573a3b0 in QApplication::notify(QObject*, QEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#38 0xb69c28e6 in KApplication::notify (this=0x80a2f28, receiver=0x91ecbe8, event=0xbfffe3d8) at /usr/local/kde-master-src/kdelibs/kdeui/kernel/kapplication.cpp:311
#39 0xb6265b6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/local/master/qt/lib/libQtCore.so.4
#40 0xb5731d72 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/local/master/qt/lib/libQtGui.so.4
#41 0xb57bbb0c in ?? () from /usr/local/master/qt/lib/libQtGui.so.4
#42 0xb57b9ff7 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/local/master/qt/lib/libQtGui.so.4
#43 0xb57e4c82 in ?? () from /usr/local/master/qt/lib/libQtGui.so.4
#44 0xb2ee4e2f in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#45 0xb2ee5560 in ?? () from /usr/lib/libglib-2.0.so.0
#46 0xb2ee57fa in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#47 0xb629722c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/local/master/qt/lib/libQtCore.so.4
#48 0xb57e4895 in ?? () from /usr/local/master/qt/lib/libQtGui.so.4
#49 0xb6264a89 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/local/master/qt/lib/libQtCore.so.4
#50 0xb6264d3a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/local/master/qt/lib/libQtCore.so.4
#51 0xb626997f in QCoreApplication::exec() () from /usr/local/master/qt/lib/libQtCore.so.4
#52 0xb572ec17 in QApplication::exec() () from /usr/local/master/qt/lib/libQtGui.so.4
#53 0xb7f84c7e in kdemain (argc=1, argv=0xbfffece4) at /usr/local/kde-master-src/kde-workspace/plasma/desktop/shell/main.cpp:120
#54 0x08048869 in main (argc=1, argv=0xbfffece4) at /usr/local/kde-master-src/kde-workspace/build/plasma/desktop/shell/plasma-desktop_dummy.cpp:3
Comment 2 Myriam Schweingruber 2012-06-10 00:34:37 UTC
the problem appears to be with powerdevil, though:
#15 0xa5b810dd in PowerDevil::BundledActions::SuspendSessionConfig::save (this=0x928de40) at /usr/local/kde-master-src/kde-workspace/powerdevil/daemon/actions/bundled/suspendsessionconfig.cpp:53
#16 0xa5be15a0 in ActionEditWidget::save (this=0x928a068) at /usr/local/kde-master-src/kde-workspace/powerdevil/kcmodule/common/actioneditwidget.cpp:158
#17 0xa5bf4240 in EditPage::save (this=0x9220010) at /usr/local/kde-master-src/kde-workspace/powerdevil/kcmodule/profiles/EditPage.cpp:185

Reassign or subscribe the powerdevil maintainer?
Comment 3 Steve 2012-06-13 13:25:51 UTC
I can confirm this in Kubuntu 12.04, KDE 4.9 beta1, using Project Neon on a Thinkpad T500.
Comment 4 ray-ven 2012-06-18 15:14:05 UTC
Created attachment 71916 [details]
New crash information added by DrKonqi

plasma-desktop (0.4) on KDE Platform 4.8.90 (4.8.90) using Qt 4.8.1

Dupe: 302047

Not fixed in Kubuntu 4.9 Beta 2 (and todays updates)

-- Backtrace (Reduced):
#6  0x00007feec4dd50d7 in KConfigGroup::writeEntry(char const*, QByteArray const&, QFlags<KConfigBase::WriteConfigFlag>) () from /usr/lib/libkdecore.so.5
[...]
#8  0x00007feec4dd99f1 in KConfigGroup::writeEntry(char const*, QVariant const&, QFlags<KConfigBase::WriteConfigFlag>) () from /usr/lib/libkdecore.so.5
[...]
#10 0x00007fee6b49512e in ActionEditWidget::save() () from /usr/lib/libpowerdevilconfigcommonprivate.so.4
[...]
#14 0x00007feec5396178 in KDialog::slotButtonClicked(int) () from /usr/lib/libkdeui.so.5
[...]
#17 0x00007feec4778b3e in QSignalMapper::mapped(int) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
Comment 5 Marco Martin 2012-06-19 18:05:49 UTC
Git commit 0570ab52641ec45b28bf749413c78a5e51009b8e by Marco Martin.
Committed on 19/06/2012 at 20:05.
Pushed by mart into branch 'KDE/4.8'.

prevent save of not loaded modules

M  +3    -0    plasma/applet.cpp

http://commits.kde.org/kdelibs/0570ab52641ec45b28bf749413c78a5e51009b8e
Comment 6 Anne-Marie Mahfouf 2012-06-19 19:36:24 UTC
*** Bug 302047 has been marked as a duplicate of this bug. ***
Comment 7 Lamarque V. Souza 2012-07-28 22:55:26 UTC
*** Bug 304138 has been marked as a duplicate of this bug. ***