Bug 477956 - System Settings crashed in Kirigami::Platform::Units::iconSizes() when I tried to open SDDM KCM via Kickoff
Summary: System Settings crashed in Kirigami::Platform::Units::iconSizes() when I trie...
Status: RESOLVED WORKSFORME
Alias: None
Product: frameworks-kirigami
Classification: Frameworks and Libraries
Component: general (other bugs)
Version First Reported In: 5.246.0
Platform: Arch Linux Linux
: NOR crash
Target Milestone: Not decided
Assignee: kdelibs bugs
URL:
Keywords: drkonqi, qt6
Depends on:
Blocks:
 
Reported: 2023-12-02 23:06 UTC by Patrick Silva
Modified: 2025-04-23 15:23 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Silva 2023-12-02 23:06:40 UTC
Application: systemsettings (5.90.0)

Qt Version: 6.6.1
Frameworks Version: 5.246.0
Operating System: Linux 6.6.3-arch1-1 x86_64
Windowing System: Wayland
Distribution: "Arch Linux"
DrKonqi: 5.90.0 [KCrashBackend]

-- Information about the crash:
I tried to open SDDM KCM via Kicoff,  the KCM did not open and Plasma notified a crash after ~20 seconds.

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: System Settings (systemsettings), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = <optimized out>}
[KCrash Handler]
#6  0x00007f363c6d1818 in Kirigami::Platform::Units::iconSizes() const (this=0x555adb052600) at /usr/include/c++/13.2.1/bits/unique_ptr.h:199
#7  0x00007f3614a553ef in Icon::iconSizeHint() const (this=this@entry=0x555adba94780) at /usr/src/debug/kirigami/kirigami-5.246.0/src/icon.cpp:620
#8  0x00007f3614a568d0 in Icon::iconPixmap(QIcon const&) const (icon=..., this=0x555adba94780) at /usr/src/debug/kirigami/kirigami-5.246.0/src/icon.cpp:628
#9  Icon::findIcon(QSize const&) (this=this@entry=0x555adba94780, size=...) at /usr/src/debug/kirigami/kirigami-5.246.0/src/icon.cpp:541
#10 0x00007f3614a597c0 in Icon::updatePolish() (this=0x555adba94780) at /usr/src/debug/kirigami/kirigami-5.246.0/src/icon.cpp:377
#11 0x00007f3645071c4a in QQuickWindowPrivate::polishItems() (this=0x555adbf286f0) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.6.1/src/quick/items/qquickwindow.cpp:346
#12 0x00007f364520d6b5 in QSGThreadedRenderLoop::polishAndSync(QSGThreadedRenderLoop::Window*, bool) (this=this@entry=0x555adbbcd4b0, w=w@entry=0x555adcef2780, inExpose=inExpose@entry=true) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.6.1/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1588
#13 0x00007f364520e4b1 in QSGThreadedRenderLoop::handleExposure(QQuickWindow*) (window=<optimized out>, this=0x555adbbcd4b0) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.6.1/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1308
#14 QSGThreadedRenderLoop::exposureChanged(QQuickWindow*) (this=0x555adbbcd4b0, window=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.6.1/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1219
#15 0x00007f3644009569 in QWindow::event(QEvent*) (this=0x555adb56b970, ev=0x7fff11b65200) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/gui/kernel/qwindow.cpp:2553
#16 0x00007f364577319b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x555adb56b970, e=0x7fff11b65200) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/widgets/kernel/qapplication.cpp:3296
#17 0x00007f3643962a78 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x555adb56b970, event=0x7fff11b65200) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1121
#18 0x00007f3643962acd in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1553
#19 0x00007f3643fb3c94 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) (e=0x555ada3e4be0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/gui/kernel/qguiapplication.cpp:3292
#20 0x00007f3644010c3c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=flags@entry=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/gui/kernel/qwindowsysteminterface.cpp:1109
#21 0x00007f3644010e27 in QWindowSystemInterface::flushWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/gui/kernel/qwindowsysteminterface.cpp:1078
#22 0x00007f36439a5447 in QObject::event(QEvent*) (this=0x555adbc409b0, e=0x7f363802c870) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qobject.cpp:1437
#23 0x00007f364577319b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x555adbc409b0, e=0x7f363802c870) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/widgets/kernel/qapplication.cpp:3296
#24 0x00007f3643962a78 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x555adbc409b0, event=event@entry=0x7f363802c870) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1121
#25 0x00007f3643962dfb in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7f363802c870, receiver=<optimized out>) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1539
#26 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x555ada0b1260) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1901
#27 0x00007f3643b9ead4 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=0x0, event_type=0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1760
#28 postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x555ada0eb9a0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventdispatcher_glib.cpp:243
#29 0x00007f3642be6f69 in g_main_dispatch (context=0x7f3638000ef0) at ../glib/glib/gmain.c:3476
#30 0x00007f3642c45327 in g_main_context_dispatch_unlocked (context=0x7f3638000ef0) at ../glib/glib/gmain.c:4284
#31 g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7f3638000ef0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4349
#32 0x00007f3642be5162 in g_main_context_iteration (context=0x7f3638000ef0, may_block=1) at ../glib/glib/gmain.c:4414
#33 0x00007f3643b9d074 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x555ada0b4ca0, flags=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventdispatcher_glib.cpp:393
#34 0x00007f364396cf5e in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=..., this=0x7fff11b657a0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventloop.cpp:100
#35 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fff11b657a0, flags=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventloop.cpp:182
#36 0x00007f3643965518 in QCoreApplication::exec() () at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/corelib/global/qflags.h:74
#37 0x00007f364576fd1a in QApplication::exec() () at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.1/src/widgets/kernel/qapplication.cpp:2574
#38 0x0000555ada04129c in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/systemsettings/systemsettings-5.90.0/app/main.cpp:175
[Inferior 1 (process 84389) detached]

Reported using DrKonqi
Comment 1 Nate Graham 2023-12-05 20:45:46 UTC
Can't reproduce. Probably an obscure issue with how Kirigami QML components are loaded.
Comment 2 Patrick Silva 2025-04-23 15:23:21 UTC
Cannot reproduce.

Operating System: Arch Linux 
KDE Plasma Version: 6.3.4
KDE Frameworks Version: 6.13.0
Qt Version: 6.9.0
Graphics Platform: Wayland