commit:     0b7b1cde21233ef797b09e5bff8a6287bc642f58
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 20 17:02:54 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Sep 20 17:11:37 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0b7b1cde

kde-plasma/plasma-workspace: Fix a systemsettings crash

KDE-bug: https://bugs.kde.org/show_bug.cgi?id=486922

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...-workspace-6.1.5-fix-systemsettings-crash.patch | 41 ++++++++++++++++++++++
 .../plasma-workspace-6.1.5-r2.ebuild               |  1 +
 2 files changed, 42 insertions(+)

diff --git 
a/kde-plasma/plasma-workspace/files/plasma-workspace-6.1.5-fix-systemsettings-crash.patch
 
b/kde-plasma/plasma-workspace/files/plasma-workspace-6.1.5-fix-systemsettings-crash.patch
new file mode 100644
index 000000000000..b199921e9dc1
--- /dev/null
+++ 
b/kde-plasma/plasma-workspace/files/plasma-workspace-6.1.5-fix-systemsettings-crash.patch
@@ -0,0 +1,41 @@
+From e81dde14d9f9c98bdce4cc5536b105a6adc3613b Mon Sep 17 00:00:00 2001
+From: Nicolas Fella <[email protected]>
+Date: Sun, 1 Sep 2024 14:24:08 +0200
+Subject: [PATCH] [krdb] Don't manually process events when applying Qt
+ settings
+
+Manually processing events like this can cause unpredictable behavior and for 
QML apps like systemsettings cause crashes
+
+It's also not necessary, the config we are applying isn't used by 
systemsettings/modern Qt apps anyway
+
+BUG: 486922
+
+SENTRY: SYSTEMSETTINGS-3RP
+(cherry picked from commit aaf0cc601a7a9ed455e2a61906ed46b6e275f007)
+---
+ kcms/krdb/krdb.cpp | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/kcms/krdb/krdb.cpp b/kcms/krdb/krdb.cpp
+index eefa0d36a0..39bcb7317d 100644
+--- a/kcms/krdb/krdb.cpp
++++ b/kcms/krdb/krdb.cpp
+@@ -484,7 +484,6 @@ void runRdb(unsigned int flags)
+             applyQtSettings(kglobalcfg, *settings); // For kcmstyle
+ 
+         delete settings;
+-        QCoreApplication::processEvents();
+ #if HAVE_X11
+         if (qApp->platformName() == QLatin1String("xcb")) {
+             // We let KIPC take care of ourselves, as we are in a KDE app with
+@@ -514,7 +513,6 @@ void runRdb(unsigned int flags)
+                             PropModeReplace,
+                             (unsigned char *)stamp.buffer().data(),
+                             stamp.buffer().size());
+-            qApp->processEvents();
+         }
+ #endif
+     }
+-- 
+GitLab
+

diff --git a/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild 
b/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild
index 317637695d40..e1943f0f6ff9 100644
--- a/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild
+++ b/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild
@@ -163,6 +163,7 @@ PATCHES=(
        "${FILESDIR}/${PN}-5.22.5-krunner-cwd-at-home.patch" # TODO upstream: 
KDE-bug 432975, bug 767478
        "${FILESDIR}/${P}-fix-wayland-session-restore-saving.patch" # KDE-bug 
436318
        "${FILESDIR}/${P}-fix-x11-logout-w-session-restore.patch" # bug 938925, 
KDE-bug 488853
+       "${FILESDIR}/${P}-fix-systemsettings-crash.patch" # KDE-bug 486922
 )
 
 src_prepare() {

Reply via email to