Bug 367952 - Plasma crash while developing with Gambas
Summary: Plasma crash while developing with Gambas
Status: RESOLVED NOT A BUG
Alias: None
Product: plasmashell
Classification: Plasma
Component: System Tray (show other bugs)
Version: 5.7.3
Platform: openSUSE Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi, triaged
Depends on:
Blocks:
 
Reported: 2016-08-29 09:55 UTC by Cristiano Guadagnino
Modified: 2018-09-30 13:57 UTC (History)
4 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 Cristiano Guadagnino 2016-08-29 09:55:13 UTC
Application: plasmashell (5.7.3)

Qt Version: 5.6.1
Frameworks Version: 5.24.0
Operating System: Linux 4.7.1-1-default x86_64
Distribution: "openSUSE Tumbleweed (20160812) (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
I had just started a Gambas application I am developing. Before starting it, I had just finished adding a popup menu to the tray icon associated with the application.
The tray icon appeared is a wrong position (it was superimposed on one widget, instead of being positioned in the tray) and it was not clickable.
As soon as I ended the application, plasma crashed.
Note that before adding the popup menu, the tray icon appeared correctly and behaved well.

-- Backtrace:
Application: Plasma (plasmashell), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fc4c9bbd8c0 (LWP 2732))]

Thread 11 (Thread 0x7fc3f1fda700 (LWP 3646)):
#0  0x00007fc4c31f3a1d in poll () at /lib64/libc.so.6
#1  0x00007fc4bf87e056 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc3e8004c40 in  ()
#4  0x00007fc3e80008e0 in  ()
#5  0x0000000000000001 in  ()
#6  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#8  0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc3fc60fe17 in KCupsConnection::run() () at /usr/lib64/libkcupslib.so
#10 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7fc3fffff700 (LWP 3447)):
#0  0x00007fc4bf87d568 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#1  0x00007fc4bf87df7b in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc3f4002e10 in  ()
#4  0x00007fc3f40008e0 in  ()
#5  0x0000000000000001 in  ()
#6  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#8  0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc4bd047209 in  () at /usr/lib64/libKF5KIOCore.so.5
#10 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7fc4052b2700 (LWP 3444)):
#0  0x00007fc4c38e9fe9 in QMutex::lock() () at /usr/lib64/libQt5Core.so.5
#1  0x00007fc4c3b1f17f in  () at /usr/lib64/libQt5Core.so.5
#2  0x00007fc4bf87d5a9 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc4bf87df7b in  () at /usr/lib64/libglib-2.0.so.0
#4  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#5  0x00007fc3f8003190 in  ()
#6  0x00007fc3f80008e0 in  ()
#7  0x0000000000000001 in  ()
#8  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#10 0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#12 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#13 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7fc405ab3700 (LWP 3443)):
#0  0x00007fc4bf8c20c4 in  () at /usr/lib64/libglib-2.0.so.0
#1  0x0ec2ac67422b9600 in  ()
#2  0x0000000000000008 in  ()
#3  0x00007fc400000990 in  ()
#4  0x0000000000000001 in  ()
#5  0x0000000000000004 in  ()
#6  0x00007fc4000008c0 in  ()
#7  0x0000000000000000 in  ()

Thread 7 (Thread 0x7fc40feed700 (LWP 3288)):
#0  0x00007fc4bf87d9fc in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#1  0x00007fc4bf87dff4 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc408004080 in  ()
#4  0x00007fc4080008e0 in  ()
#5  0x0000000000000001 in  ()
#6  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#8  0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc4c7826606 in  () at /usr/lib64/libQt5Quick.so.5
#10 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7fc49ffff700 (LWP 3052)):
#0  0x00007fc4c29fc09f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fc4c929cfc4 in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007fc4c929d009 in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#4  0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7fc4aa14c700 (LWP 2974)):
#0  0x00007fc4bf87db1a in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#1  0x00007fc4bf87dff4 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc498002f90 in  ()
#4  0x00007fc4980008e0 in  ()
#5  0x0000000000000001 in  ()
#6  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#8  0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc4c6c971e5 in  () at /usr/lib64/libQt5Qml.so.5
#10 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7fc4abbdc700 (LWP 2832)):
#0  0x00007fc4c31f3a1d in poll () at /lib64/libc.so.6
#1  0x00007fc4bf87e056 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc4a0002d90 in  ()
#4  0x00007fc4a00008e0 in  ()
#5  0x0000000000000001 in  ()
#6  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#8  0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc4c6c971e5 in  () at /usr/lib64/libQt5Qml.so.5
#10 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fc4b1424700 (LWP 2756)):
#0  0x00007fc4c31f3a1d in poll () at /lib64/libc.so.6
#1  0x00007fc4bf87e056 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fc4a4002f90 in  ()
#4  0x00007fc4a40008e0 in  ()
#5  0x0000000000000001 in  ()
#6  0x00007fc4c3b1faeb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#8  0x00007fc4c38ed3b3 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#9  0x00007fc4c46c39b5 in  () at /usr/lib64/libQt5DBus.so.5
#10 0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#11 0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#12 0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7fc4b3041700 (LWP 2751)):
#0  0x00007fc4c31f3a1d in poll () at /lib64/libc.so.6
#1  0x00007fc4c81ed410 in  () at /usr/lib64/libxcb.so.1
#2  0x00007fc4c81ef1a9 in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007fc4b53a87b9 in  () at /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007fc4c38f22d8 in  () at /usr/lib64/libQt5Core.so.5
#5  0x00007fc4c29f6474 in start_thread () at /lib64/libpthread.so.0
#6  0x00007fc4c31fc3ed in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7fc4c9bbd8c0 (LWP 2732)):
[KCrash Handler]
#6  0x00007fc4c3148975 in raise () at /lib64/libc.so.6
#7  0x00007fc4c3149d8a in abort () at /lib64/libc.so.6
#8  0x00007fc4c354e6bd in __gnu_cxx::__verbose_terminate_handler() () at /usr/lib64/libstdc++.so.6
#9  0x00007fc4c354c696 in  () at /usr/lib64/libstdc++.so.6
#10 0x00007fc4c354c6e1 in  () at /usr/lib64/libstdc++.so.6
#11 0x00007fc4c354c8f8 in  () at /usr/lib64/libstdc++.so.6
#12 0x00007fc4c38d4612 in  () at /usr/lib64/libQt5Core.so.5
#13 0x00007fc4c39543c1 in QListData::realloc_grow(int) () at /usr/lib64/libQt5Core.so.5
#14 0x00007fc4c395448f in QListData::append(int) () at /usr/lib64/libQt5Core.so.5
#15 0x00007fc3fe6e2b13 in  () at /usr/lib64/qt5/plugins/plasma/dataengine/plasma_engine_statusnotifieritem.so
#16 0x00007fc3fe6d8f11 in  () at /usr/lib64/qt5/plugins/plasma/dataengine/plasma_engine_statusnotifieritem.so
#17 0x00007fc4c3af724c in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#18 0x00007fc4c471aa1f in QDBusPendingCallWatcher::finished(QDBusPendingCallWatcher*) () at /usr/lib64/libQt5DBus.so.5
#19 0x00007fc4c471ab18 in  () at /usr/lib64/libQt5DBus.so.5
#20 0x00007fc4c3af7cf9 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#21 0x00007fc4c4a9baec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#22 0x00007fc4c4aa0f8f in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#23 0x00007fc4c3ac9a20 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#24 0x00007fc4c3acb99c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt5Core.so.5
#25 0x00007fc4c3b1f6c3 in  () at /usr/lib64/libQt5Core.so.5
#26 0x00007fc4bf87de57 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#27 0x00007fc4bf87e0c0 in  () at /usr/lib64/libglib-2.0.so.0
#28 0x00007fc4bf87e16c in  () at /usr/lib64/libglib-2.0.so.0
#29 0x0000000000ca7330 in  ()
#30 0x0000000000c48890 in  ()
#31 0x0000000000000001 in  ()
#32 0x00007fc4c3b1facf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#33 0x00007fc4c3ac776a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#34 0x00007fc4c3acff6c in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#35 0x000000000041cd8f in  ()
#36 0x00007fc4c3134741 in __libc_start_main () at /lib64/libc.so.6
#37 0x000000000041d109 in _start ()

Reported using DrKonqi
Comment 1 David Edmundson 2016-09-03 09:01:29 UTC
It seems gamabas is sending something interesting over the system tray menu.

Does it happen everytime? If so can you give me some detailed step-by-step guide to recreating?
Comment 2 Cristiano Guadagnino 2016-09-04 20:22:02 UTC
Hi David! Yes, it happens everytime.
Actually, I found out were the problem lies: if I add a pop-up menu to the tray icon of my program, it runs correctly and does NOT crash plasma.
However, if I later add accelerators to the menu items, then when I run the program it behaves strangely and shortly after plasma will crash.
Hope this helps clarifying the issue.
Comment 3 Cristiano Guadagnino 2016-09-04 20:25:36 UTC
I should add that the problem was generated with Gambas 3.8.4, which is NOT the latest release (the latest is 3.9).
As soon as Gambas 3.9 lands into openSUSE's repos I'll test against that release.
Comment 4 Marco Martin 2016-09-09 15:26:58 UTC
since it seems it happens every time, is it possible to reproduce it with more debug symbols installed so the backtrace tells more?
Comment 5 David Edmundson 2016-09-11 23:20:58 UTC
So this is a program you made in Gambas?

Can you send me that?
Comment 6 Cristiano Guadagnino 2016-09-12 02:29:13 UTC
No, but this is very easily recreated on your part.
Just create a gui qt5 program with an empty main window and add to that a tray icon.
Then create a menu and assign it to the tray icon. Add a few accelerators to the menu and then try to run the program.
Comment 7 David Edmundson 2016-09-19 16:43:36 UTC
I'm not learning how to code in gambas, just to recreate this.

If you want this fixed, can you please just send me an example that you've already written.
Comment 8 Cristiano Guadagnino 2016-09-19 19:59:49 UTC
OK, you're right. I'll send a working example ASAP.
Comment 9 Cristiano Guadagnino 2016-09-21 16:30:26 UTC
David, Gambas was recently updated to v3.9.1 and this release does not show the reported behavior. I believe this means that the problem was in Gambas itself, not in KDE.
I think the bug can be closed, if you agree.
Comment 10 Andrew Crouthamel 2018-09-26 22:16:25 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 11 Cristiano Guadagnino 2018-09-30 13:57:54 UTC
The problem was in Gambas 3.8.4, not in KDE. More recent releases of Gambas do not show the behavior.