Bug 322277 - Empty activity name causes crash for KDE Activity Managerd
Summary: Empty activity name causes crash for KDE Activity Managerd
Status: RESOLVED UNMAINTAINED
Alias: None
Product: plasma4
Classification: Plasma
Component: activities (show other bugs)
Version: git master
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2013-07-12 12:43 UTC by Ömer Fadıl USTA
Modified: 2018-06-08 19:00 UTC (History)
3 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 Ömer Fadıl USTA 2013-07-12 12:43:35 UTC
Application: kactivitymanagerd (3.0)
KDE Platform Version: 4.10.95 (Compiled from sources)
Qt Version: 4.8.4
Operating System: Linux 3.10.0-2-generic x86_64
Distribution: Ubuntu Saucy Salamander (development branch)

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

Just change any activity name to null ( empty ) from show activity manager widget
and the  KDE Activity Manager  will crash. I think we need to check whether the input is empty or not before setting it as activity name

The crash can be reproduced every time.

-- Backtrace:
Application: KDE Activity Manager (kactivitymanagerd), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fbb4b9f27c0 (LWP 2144))]

Thread 6 (Thread 0x7fbb3a426700 (LWP 2153)):
#0  0x00007fbb45d75a1b in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007fbb45d762b3 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fbb45d7649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fbb4a5c1a76 in QEventDispatcherGlib::processEvents (this=0x7fbb340008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007fbb4a5935ef in QEventLoop::processEvents (this=this@entry=0x7fbb3a425d80, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fbb4a5938e5 in QEventLoop::exec (this=this@entry=0x7fbb3a425d80, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fbb4a49288f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#7  0x000000000040d877 in Resources* runInQThread<Resources>()::Thread::run() (this=0xa71b60) at /home/usta/kde/src/kactivities/src/service/Application.cpp:68
#8  0x00007fbb4a494f2f in QThreadPrivate::start (arg=0xa71b60) at thread/qthread_unix.cpp:338
#9  0x00007fbb48e86f8e in start_thread (arg=0x7fbb3a426700) at pthread_create.c:311
#10 0x00007fbb49195e1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 5 (Thread 0x7fbb39c25700 (LWP 2154)):
#0  0x00007fbb49187b0d in read () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fbb45db5080 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fbb45d75ebc in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fbb45d7632b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fbb45d7649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fbb4a5c1a76 in QEventDispatcherGlib::processEvents (this=0x7fbb2c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0x00007fbb4a5935ef in QEventLoop::processEvents (this=this@entry=0x7fbb39c24d80, flags=...) at kernel/qeventloop.cpp:149
#7  0x00007fbb4a5938e5 in QEventLoop::exec (this=this@entry=0x7fbb39c24d80, flags=...) at kernel/qeventloop.cpp:204
#8  0x00007fbb4a49288f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#9  0x000000000040d97d in Activities* runInQThread<Activities>()::Thread::run() (this=0xae15b0) at /home/usta/kde/src/kactivities/src/service/Application.cpp:68
#10 0x00007fbb4a494f2f in QThreadPrivate::start (arg=0xae15b0) at thread/qthread_unix.cpp:338
#11 0x00007fbb48e86f8e in start_thread (arg=0x7fbb39c25700) at pthread_create.c:311
#12 0x00007fbb49195e1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 4 (Thread 0x7fbb39424700 (LWP 2155)):
#0  0x00007fbb49187b0d in read () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fbb45db5080 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fbb45d75ebc in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fbb45d7632b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fbb45d7649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fbb4a5c1a76 in QEventDispatcherGlib::processEvents (this=0x7fbb300008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0x00007fbb4a5935ef in QEventLoop::processEvents (this=this@entry=0x7fbb39423d80, flags=...) at kernel/qeventloop.cpp:149
#7  0x00007fbb4a5938e5 in QEventLoop::exec (this=this@entry=0x7fbb39423d80, flags=...) at kernel/qeventloop.cpp:204
#8  0x00007fbb4a49288f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#9  0x000000000040da83 in Features* runInQThread<Features>()::Thread::run() (this=0xae3240) at /home/usta/kde/src/kactivities/src/service/Application.cpp:68
#10 0x00007fbb4a494f2f in QThreadPrivate::start (arg=0xae3240) at thread/qthread_unix.cpp:338
#11 0x00007fbb48e86f8e in start_thread (arg=0x7fbb39424700) at pthread_create.c:311
#12 0x00007fbb49195e1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 3 (Thread 0x7fbb257a2700 (LWP 2159)):
#0  0x00007fbb45db5afa in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007fbb45db5da9 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fbb45d76488 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fbb4a5c1a76 in QEventDispatcherGlib::processEvents (this=0x7fbb200008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007fbb4a5935ef in QEventLoop::processEvents (this=this@entry=0x7fbb257a1d80, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fbb4a5938e5 in QEventLoop::exec (this=this@entry=0x7fbb257a1d80, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fbb4a49288f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#7  0x00007fbb2bbe2bbd in ActivityRankingPlugin::Thread::run (this=0xb399e0) at /home/usta/kde/src/kactivities/src/service/plugins/activityranking/ActivityRankingPlugin.cpp:54
#8  0x00007fbb4a494f2f in QThreadPrivate::start (arg=0xb399e0) at thread/qthread_unix.cpp:338
#9  0x00007fbb48e86f8e in start_thread (arg=0x7fbb257a2700) at pthread_create.c:311
#10 0x00007fbb49195e1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 2 (Thread 0x7fbb24fa1700 (LWP 2160)):
#0  0x00007fbb491893cd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fbb45d76394 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fbb45d7649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fbb4a5c1a76 in QEventDispatcherGlib::processEvents (this=0x7fbb180008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007fbb4a5935ef in QEventLoop::processEvents (this=this@entry=0x7fbb24fa0d70, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fbb4a5938e5 in QEventLoop::exec (this=this@entry=0x7fbb24fa0d70, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fbb4a49288f in QThread::exec (this=this@entry=0xb40cc0) at thread/qthread.cpp:542
#7  0x00007fbb4a574d13 in QInotifyFileSystemWatcherEngine::run (this=0xb40cc0) at io/qfilesystemwatcher_inotify.cpp:256
#8  0x00007fbb4a494f2f in QThreadPrivate::start (arg=0xb40cc0) at thread/qthread_unix.cpp:338
#9  0x00007fbb48e86f8e in start_thread (arg=0x7fbb24fa1700) at pthread_create.c:311
#10 0x00007fbb49195e1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 1 (Thread 0x7fbb4b9f27c0 (LWP 2144)):
[KCrash Handler]
#6  0x00007fbb490d3037 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#7  0x00007fbb490d6698 in __GI_abort () at abort.c:90
#8  0x00007fbb4a48a912 in qt_message_output (msgType=msgType@entry=QtFatalMsg, buf=0xae8678 "ASSERT: \"!name.isEmpty()\" in file /home/usta/kde/src/kactivities/src/service/plugins/nepomuk/NepomukPlugin.cpp, line 188") at global/qglobal.cpp:2347
#9  0x00007fbb4a48ac79 in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, msg=0x7fbb4a5f5a80 "ASSERT: \"%s\" in file %s, line %d", ap=ap@entry=0x7fffbee0dfd8) at global/qglobal.cpp:2393
#10 0x00007fbb4a48b484 in qFatal (msg=<optimized out>) at global/qglobal.cpp:2576
#11 0x00007fbb38684bf3 in NepomukPlugin::setActivityName (this=0xb20e10, activity=..., name=...) at /home/usta/kde/src/kactivities/src/service/plugins/nepomuk/NepomukPlugin.cpp:188
#12 0x00007fbb38683d8a in NepomukPlugin::qt_static_metacall (_o=0xb20e10, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0x7fbb2c005440) at /home/usta/kde/build/kactivities/src/service/plugins/nepomuk/moc_NepomukPlugin.cpp:101
#13 0x00007fbb4a5acdce in QObject::event (this=0xb20e10, e=<optimized out>) at kernel/qobject.cpp:1194
#14 0x00007fbb49931dfc in QApplicationPrivate::notify_helper (this=this@entry=0x986780, receiver=receiver@entry=0xb20e10, e=e@entry=0x7fbb2c0048a0) at kernel/qapplication.cpp:4567
#15 0x00007fbb49938470 in QApplication::notify (this=0x9703b0, receiver=0xb20e10, e=0x7fbb2c0048a0) at kernel/qapplication.cpp:4353
#16 0x00007fbb4adedf15 in KApplication::notify (this=0x9703b0, receiver=0xb20e10, event=0x7fbb2c0048a0) at /home/usta/kde/src/kdelibs/kdeui/kernel/kapplication.cpp:311
#17 0x00007fbb4a5948bd in QCoreApplication::notifyInternal (this=0x9703b0, receiver=receiver@entry=0xb20e10, event=event@entry=0x7fbb2c0048a0) at kernel/qcoreapplication.cpp:946
#18 0x00007fbb4a597e1f in sendEvent (event=0x7fbb2c0048a0, receiver=0xb20e10) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#19 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x957150) at kernel/qcoreapplication.cpp:1570
#20 0x00007fbb4a5982c3 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1463
#21 0x00007fbb4a5c2073 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#22 postEventSourceDispatch (s=0x97e200) at kernel/qeventdispatcher_glib.cpp:279
#23 0x00007fbb45d760a6 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007fbb45d763f8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007fbb45d7649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#26 0x00007fbb4a5c1a76 in QEventDispatcherGlib::processEvents (this=0x958610, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#27 0x00007fbb499d39d6 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#28 0x00007fbb4a5935ef in QEventLoop::processEvents (this=this@entry=0x7fffbee0e7a0, flags=...) at kernel/qeventloop.cpp:149
#29 0x00007fbb4a5938e5 in QEventLoop::exec (this=this@entry=0x7fffbee0e7a0, flags=...) at kernel/qeventloop.cpp:204
#30 0x00007fbb4a598e5b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#31 0x000000000040cae9 in main (argc=1, argv=0x7fffbee0e9b8) at /home/usta/kde/src/kactivities/src/service/Application.cpp:236

Reported using DrKonqi
Comment 1 Ivan Čukić 2013-07-21 09:00:43 UTC
KAMD does not really crash - it hits an assert that should exist in a development version to notify the users (in this case plasma) that an empty named activity is a no-no :)

Setting the empty name should be prevented by the UI.
Comment 2 Nate Graham 2018-06-08 19:00:09 UTC
Hello!

This bug report was filed for KDE Plasma 4, which reached end-of-support status in August 2015. KDE Plasma 5's desktop shell has been almost completely rewritten for better performance and usability, so it is likely that this bug is already resolved in Plasma 5.

Accordingly, we hope you understand why we must close this bug report. If the issue described  here is still present in KDE Plasma 5.12 or later, please feel free to open a new ticket in the "plasmashell" product after reading https://community.kde.org/Get_Involved/Bug_Reporting

If you would like to get involved in KDE's bug triaging effort so that future mass bug closes like this are less likely, please read https://community.kde.org/Get_Involved#Bug_Triaging

Thanks for your understanding!

Nate Graham