Bug 422819 - System Settings crashes when opening "Applications" module
Summary: System Settings crashes when opening "Applications" module
Alias: None
Product: systemsettings
Classification: Applications
Component: general (show other bugs)
Version: 5.19.0
Platform: Archlinux Linux
: NOR crash (vote)
Target Milestone: ---
Assignee: Plasma Bugs List
Keywords: drkonqi
Depends on:
Reported: 2020-06-11 14:30 UTC by Jason Cox
Modified: 2020-06-28 14:55 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.19.3

New crash information added by DrKonqi (2.59 KB, text/plain)
2020-06-27 11:12 UTC, Alex Merry

Note You need to log in before you can comment on or make changes to this bug.
Description Jason Cox 2020-06-11 14:30:03 UTC
Application: systemsettings5 (5.19.0)

Qt Version: 5.15.0
Frameworks Version: 5.70.0
Operating System: Linux 5.6.15-arch1-1 x86_64
Windowing system: X11
Distribution: Arch Linux

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

I was reviewing my system settings and noticed that clicking on the "Applications" module crashes the entire application.

The crash can be reproduced every time.

-- Backtrace:
Application: System Settings (systemsettings5), signal: Segmentation fault

[KCrash Handler]
#4  0x00007fbf4b77c514 in KService::storageId() const () at /usr/lib/libKF5Service.so.5
#5  0x00007fbf1b7acaa6 in  () at /usr/lib/qt/plugins/kcm_componentchooser.so
#6  0x00007fbf1b7aaacb in  () at /usr/lib/qt/plugins/kcm_componentchooser.so
#7  0x00007fbf4b9fc799 in  () at /usr/lib/libKF5ConfigWidgets.so.5
#8  0x00007fbf4a4ff0b2 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#9  0x00007fbf4b0346f2 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#10 0x00007fbf4a4d269a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#11 0x00007fbf4a4d5183 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#12 0x00007fbf4a52bbd4 in  () at /usr/lib/libQt5Core.so.5
#13 0x00007fbf480fa43c in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#14 0x00007fbf48147fa9 in  () at /usr/lib/libglib-2.0.so.0
#15 0x00007fbf480f9221 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#16 0x00007fbf4a52b211 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#17 0x00007fbf4a4d101c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#18 0x00007fbf4a4d94a4 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#19 0x00005596f28df806 in  ()
#20 0x00007fbf49e9f002 in __libc_start_main () at /usr/lib/libc.so.6
#21 0x00005596f28e04ae in _start ()
[Inferior 1 (process 57810) detached]

Possible duplicates by query: bug 422808, bug 422533, bug 422484, bug 422451, bug 422438.

Reported using DrKonqi
Comment 1 Alex Merry 2020-06-27 11:12:16 UTC
Created attachment 129719 [details]
New crash information added by DrKonqi

systemsettings5 (5.19.2) using Qt 5.15.0

- What I was doing when the application crashed:

There are two ways I can trigger this crash: opening the "Default Applications" module directly from KRunner, or opening System Settings and navigating to "Default Applications".

I currently have Firefox installed. I also had elinks installed originally, but even after uninstalling elinks, the crash still happens.

I recompiled kservice and plasma-desktop from sources (using the same build scripts as the distribution's packages) in order to get useful backtrace information. The crash happened both before and after this, in an identical manner.

-- Backtrace (Reduced):
#4  0x00007f1112fd94b4 in KService::storageId() const () from /usr/lib/libKF5Service.so.5
#5  0x00007f10e404caa6 in CfgFileManager::load (this=0x555ad80cd430) at /usr/include/qt/QtCore/qshareddata.h:161
#6  0x00007f10e404aacb in ComponentChooser::load (this=0x555ad80b8a20) at /usr/src/debug/plasma-desktop-5.19.2/kcms/componentchooser/componentchooser.cpp:130
#7  0x00007f1111daf0b2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007f11128d8702 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
Comment 2 Alex Merry 2020-06-27 11:16:24 UTC
Wait, I messed up the debug package installation. Here's a better version of the stop of the backtrace:

[KCrash Handler]
#4  0x00007f72a27774b4 in KService::d_func (this=<optimized out>) at /usr/src/debug/kservice-5.71.0/src/services/kservice.cpp:823
#5  KService::storageId (this=0x0) at /usr/src/debug/kservice-5.71.0/src/services/kservice.cpp:824
#6  0x00007f728402aaa6 in CfgFileManager::load (this=0x55cae1734d90) at /usr/include/qt/QtCore/qshareddata.h:161
#7  0x00007f7284028acb in ComponentChooser::load (this=0x55cae17203a0) at /usr/src/debug/plasma-desktop-5.19.2/kcms/componentchooser/componentchooser.cpp:130
#8  0x00007f72a154d0b2 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
Comment 3 Alexander Lohnau 2020-06-27 12:01:54 UTC
What file managers do you have installed?
Comment 4 Alex Merry 2020-06-27 12:11:46 UTC
None - I've been looking through the code and come to the conclusion that was the cause. The fix is trivial - I'll submit a patch shortly.
Comment 5 Bug Janitor Service 2020-06-27 12:22:03 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/49
Comment 6 Jason Cox 2020-06-27 14:07:13 UTC
I also have no file manager installed, so it's likely the same cause for me.
Comment 7 Alex Merry 2020-06-28 13:03:19 UTC
Git commit 74753128180a36c9fba154914b3a2384025c4893 by Alex Merry.
Committed on 27/06/2020 at 12:18.
Pushed by alexmerry into branch 'Plasma/5.19'.

Fix a KCM crash when no file manager is installed

If no file manager is installed, the componentchooser KCM would attempt
to dereference a null pointer.
FIXED-IN: 5.19.3

M  +1    -1    kcms/componentchooser/componentchooserfilemanager.cpp