Summary: | SystemSettings5 Crashes in KCMPlymouth::save() | ||
---|---|---|---|
Product: | [Applications] systemsettings | Reporter: | GrayDolf <bradmcanally100> |
Component: | kcm_plymouth | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | CONFIRMED --- | ||
Severity: | crash | CC: | marokanski.kazak, nate, oioi555x, postix, raulytstation, Rustmilian, sitter |
Priority: | NOR | Keywords: | drkonqi |
Version: | 5.23.5 | ||
Target Milestone: | --- | ||
Platform: | Neon | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | New crash information added by DrKonqi |
Description
GrayDolf
2022-01-27 02:16:30 UTC
#6 0x00007f8c7eab6ba7 in KCMPlymouth::save (this=0x55f4e0409b30) at ./src/kcm.cpp:206 #7 0x00007f8c8fce1d46 in KCModuleQml::save (this=0x55f4daa023e0) at /usr/include/c++/9/bits/unique_ptr.h:360 #8 0x00007f8c8fce10bf in KCModuleProxy::save (this=<optimized out>) at ./src/kcmoduleproxy.cpp:281 #9 0x00007f8c8fd3c2a5 in ModuleView::moduleSave (this=0x55f4d719f800, module=<optimized out>) at ./core/ModuleView.cpp:367 #10 0x00007f8c8fd3c5c8 in ModuleView::moduleSave (this=<optimized out>) at ./core/ModuleView.cpp:358 Created attachment 146233 [details]
New crash information added by DrKonqi
systemsettings5 (5.23.5) using Qt 5.15.3
- What I was doing when the application crashed:
I was changing the plymouth theme for my KDE Neon System
-- Backtrace (Reduced):
#4 doActivate<false>(QObject*, int, void**) (sender=0x56472d1d77b0, signal_index=20, argv=0x0) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:132
[...]
#6 0x00007fabea21d117 in KCMPlymouth::busyChanged() (this=this@entry=0x56472d1d77b0) at ./obj-x86_64-linux-gnu/src/kcm_plymouth_autogen/EWIEGA46WW/moc_kcm.cpp:299
#7 0x00007fabea21e993 in KCMPlymouth::setBusy(bool const&) (busy=<optimized out>, this=0x56472d1d77b0) at ./src/kcm.cpp:165
#8 KCMPlymouth::save() (this=0x56472d1d77b0) at ./src/kcm.cpp:208
#9 0x00007fac30347d46 in KCModuleQml::save() (this=0x56472e2b3650) at /usr/include/c++/9/bits/unique_ptr.h:360
*** Bug 449990 has been marked as a duplicate of this bug. *** - change splash - apply - close window while applying - crash What happens is that the closing pulls the objects out from under the ::save function and so it then sends signals into the void and crashes. I'm not sure how to mitigate this, we kind of need to block in ::save because of how the KCM API works. Possibly the solution could be to manually run a nested eventloop and abort it in the destructor. Ultimately though the KCM API ought to become async. It's not the first time that having to block inside a ::save is causing trouble. I opened an MR to fix this issue. https://invent.kde.org/plasma/plymouth-kcm/-/merge_requests/18 *** Bug 475067 has been marked as a duplicate of this bug. *** |