Bug 426822 - KDE menu system crashes at "save"
Summary: KDE menu system crashes at "save"
Status: RESOLVED WORKSFORME
Alias: None
Product: kmenuedit
Classification: Applications
Component: general (show other bugs)
Version: 5.18.5
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2020-09-21 16:52 UTC by William Austin
Modified: 2022-11-05 05:09 UTC (History)
1 user (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 William Austin 2020-09-21 16:52:40 UTC
Application: kmenuedit (5.18.5)

Qt Version: 5.14.2
Frameworks Version: 5.70.0
Operating System: Linux 5.8.8-200.fc32.x86_64 x86_64
Windowing system: X11
Distribution: Fedora 32 (KDE Plasma)

-- Information about the crash:
- What I was doing when the application crashed:
I was doing *extensive* edits to the menu system.  Upgrading fro FC31 to FC32, to get rid of serious "stuck focus" problem I finally blew my entire .kde directory away and started fresh.  My from menu was complex and is FAR more useful for me than the stock menu, so I was editing the menu (adding and deleting entries) and then saving and testing after each group.

I had (IIRC) between 6 and 9 of the menu-editor over roughly 2 hours of work.  EVERY CRASH HAPPENED AS SOON AS I HIT THE <SAVE BUTTON> - no exceptions.  FWIW, no, the saves did not take place, so I lost a good deal of work.  (The former copy of menu under ${HOME}/.kde/share/applnk is still ignored as it has been for a dozen or so releases, so it doesn't help but serves as a guide when I have to rebuild the menu system from scratch.

This did not occur evey time I hit save - only occasionally, usually after a larger number of changes had been made (20 or more).   Only once did it crash after making only one or two changes.  It has happened a couple of times previously, but not with the high frequency of occurrences I had today.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KDE Menu Editor (kmenuedit), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f76b60d4900 (LWP 166370))]

Thread 7 (Thread 0x7f768f7fe700 (LWP 166376)):
#0  0x00007f76b90cde92 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f769ae3885b in util_queue_thread_func () from /usr/lib64/dri/nouveau_dri.so
#2  0x00007f769ae3832b in impl_thrd_routine () from /usr/lib64/dri/nouveau_dri.so
#3  0x00007f76b90c7432 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f76bb3ea913 in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f768ffff700 (LWP 166375)):
#0  0x00007f76b90cde92 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f769ae3885b in util_queue_thread_func () from /usr/lib64/dri/nouveau_dri.so
#2  0x00007f769ae3832b in impl_thrd_routine () from /usr/lib64/dri/nouveau_dri.so
#3  0x00007f76b90c7432 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f76bb3ea913 in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f7694b2e700 (LWP 166374)):
#0  0x00007f76b90cde92 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f769ae3885b in util_queue_thread_func () from /usr/lib64/dri/nouveau_dri.so
#2  0x00007f769ae3832b in impl_thrd_routine () from /usr/lib64/dri/nouveau_dri.so
#3  0x00007f76b90c7432 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f76bb3ea913 in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f769532f700 (LWP 166373)):
#0  0x00007f76b90cde92 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f769ae3885b in util_queue_thread_func () from /usr/lib64/dri/nouveau_dri.so
#2  0x00007f769ae3832b in impl_thrd_routine () from /usr/lib64/dri/nouveau_dri.so
#3  0x00007f76b90c7432 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f76bb3ea913 in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f76a34a8700 (LWP 166372)):
#0  0x00007f76b8778bed in g_source_unref_internal () from /lib64/libglib-2.0.so.0
#1  0x00007f76b877a945 in g_source_iter_next () from /lib64/libglib-2.0.so.0
#2  0x00007f76b877bee3 in g_main_context_prepare () from /lib64/libglib-2.0.so.0
#3  0x00007f76b877c9db in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#4  0x00007f76b877cbe3 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#5  0x00007f76b9c6bb8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#6  0x00007f76b9c1e91b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#7  0x00007f76b9a8a427 in QThread::exec() () from /lib64/libQt5Core.so.5
#8  0x00007f76b9f9251b in QDBusConnectionManager::run() () from /lib64/libQt5DBus.so.5
#9  0x00007f76b9a8b690 in QThreadPrivate::start(void*) () from /lib64/libQt5Core.so.5
#10 0x00007f76b90c7432 in start_thread () from /lib64/libpthread.so.0
#11 0x00007f76bb3ea913 in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f76a8e03700 (LWP 166371)):
#0  0x00007f76bb3dfaaf in poll () from /lib64/libc.so.6
#1  0x00007f76b81d038a in _xcb_conn_wait () from /lib64/libxcb.so.1
#2  0x00007f76b81d271a in xcb_wait_for_event () from /lib64/libxcb.so.1
#3  0x00007f76a8fd1c78 in QXcbEventQueue::run() () from /lib64/libQt5XcbQpa.so.5
#4  0x00007f76b9a8b690 in QThreadPrivate::start(void*) () from /lib64/libQt5Core.so.5
#5  0x00007f76b90c7432 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f76bb3ea913 in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f76b60d4900 (LWP 166370)):
[KCrash Handler]
#4  0x00007f76bb04fad4 in KService::desktopEntryName() const () from /lib64/libKF5Service.so.5
#5  0x00007f76bb4e5498 in GlobalAccel::changeMenuEntryShortcut(QExplicitlySharedDataPointer<KService>, QKeySequence const&) () from /lib64/libkdeinit5_kmenuedit.so
#6  0x00007f76bb4e30a2 in MenuFolderInfo::save(MenuFile*) () from /lib64/libkdeinit5_kmenuedit.so
#7  0x00007f76bb4d500a in TreeView::save() () from /lib64/libkdeinit5_kmenuedit.so
#8  0x00007f76b9c4efb0 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#9  0x00007f76ba6d6876 in QAction::triggered(bool) () from /lib64/libQt5Widgets.so.5
#10 0x00007f76ba6d9161 in QAction::activate(QAction::ActionEvent) () from /lib64/libQt5Widgets.so.5
#11 0x00007f76ba7ce312 in QAbstractButtonPrivate::click() () from /lib64/libQt5Widgets.so.5
#12 0x00007f76ba7ce435 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /lib64/libQt5Widgets.so.5
#13 0x00007f76ba8c0a6e in QToolButton::mouseReleaseEvent(QMouseEvent*) () from /lib64/libQt5Widgets.so.5
#14 0x00007f76ba71e36e in QWidget::event(QEvent*) () from /lib64/libQt5Widgets.so.5
#15 0x00007f76ba6dd063 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#16 0x00007f76ba6e2891 in QApplication::notify(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#17 0x00007f76b9c1ffc0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#18 0x00007f76ba6e178a in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () from /lib64/libQt5Widgets.so.5
#19 0x00007f76ba736f82 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () from /lib64/libQt5Widgets.so.5
#20 0x00007f76ba739dde in QWidgetWindow::event(QEvent*) () from /lib64/libQt5Widgets.so.5
#21 0x00007f76ba6dd063 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#22 0x00007f76b9c1ffc0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#23 0x00007f76ba12616b in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /lib64/libQt5Gui.so.5
#24 0x00007f76ba10815b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Gui.so.5
#25 0x00007f76a8fd2c9e in xcbSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5XcbQpa.so.5
#26 0x00007f76b877c78f in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#27 0x00007f76b877cb18 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#28 0x00007f76b877cbe3 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#29 0x00007f76b9c6bb73 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#30 0x00007f76b9c1e91b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#31 0x00007f76b9c265a6 in QCoreApplication::exec() () from /lib64/libQt5Core.so.5
#32 0x00007f76bb4ce190 in kdemain () from /lib64/libkdeinit5_kmenuedit.so
#33 0x00007f76bb310042 in __libc_start_main () from /lib64/libc.so.6
#34 0x000055d829d700ae in _start ()
[Inferior 1 (process 166370) detached]

The reporter indicates this bug may be a duplicate of or related to bug 423726, bug 415699.

Possible duplicates by query: bug 423726, bug 419386, bug 417097, bug 416486, bug 415699.

Reported using DrKonqi
Comment 1 David Redondo 2020-09-22 07:44:56 UTC
It reads similiar to a thing fixed in 5.18.0 where we would crash because we wanted to create a service for a new item and  we now pass the service to the method.

I wonder, did you remove menu items in the instances when it crashed?

FYI we do not save .kde anymore but in .config/menus
Comment 2 Justin Zobel 2022-10-06 06:36:30 UTC
Thank you for reporting this crash in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the crash with a recent software version?

If you can reproduce the issue, please change the status to "CONFIRMED" when replying. Thank you!
Comment 3 Bug Janitor Service 2022-10-21 05:01:21 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
mark the bug 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 4 Bug Janitor Service 2022-11-05 05:09:41 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now 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

Thank you for helping us make KDE software even better for everyone!