commit: 5cd1959b364ae83787f02898c433c895525533a3 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Wed Dec 8 12:48:02 2021 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Wed Dec 8 15:07:45 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5cd1959b
kde-frameworks/plasma: Fix plasmashell crashes on wallpaper change Upstream commits: 9b37459570f75e09f17aadf32f7abfe8b8d4d1e0 77fedf1f9919eb2cc07c8ecccdd70ad2a7343161 KDE-bug: https://bugs.kde.org/show_bug.cgi?id=446195 Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> .../files/plasma-5.88.0-no-double-delete.patch | 28 +++++++++++++++++++++ ...asma-5.88.0-update-after-clearing-actions.patch | 29 ++++++++++++++++++++++ kde-frameworks/plasma/plasma-5.88.0-r2.ebuild | 2 ++ 3 files changed, 59 insertions(+) diff --git a/kde-frameworks/plasma/files/plasma-5.88.0-no-double-delete.patch b/kde-frameworks/plasma/files/plasma-5.88.0-no-double-delete.patch new file mode 100644 index 000000000000..d3a03411b2cf --- /dev/null +++ b/kde-frameworks/plasma/files/plasma-5.88.0-no-double-delete.patch @@ -0,0 +1,28 @@ +From 9b37459570f75e09f17aadf32f7abfe8b8d4d1e0 Mon Sep 17 00:00:00 2001 +From: Fushan Wen <qydwhotm...@gmail.com> +Date: Sat, 4 Dec 2021 17:16:30 +0800 +Subject: [PATCH] wallpaperinterface: Don't double delete action + +`removeAction` already deletes the action, it makes no sense to delete +the action again and will crash plasmashell. + +CCBUG: 446195 +--- + src/scriptengines/qml/plasmoid/wallpaperinterface.cpp | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp b/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp +index 570cf8e45..65adf838e 100644 +--- a/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp ++++ b/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp +@@ -229,7 +229,6 @@ void WallpaperInterface::removeAction(const QString &name) + + if (action) { + m_actions->removeAction(action); +- delete action; + } + setProperty("contextualActions", QVariant::fromValue(contextualActions())); + } +-- +GitLab + diff --git a/kde-frameworks/plasma/files/plasma-5.88.0-update-after-clearing-actions.patch b/kde-frameworks/plasma/files/plasma-5.88.0-update-after-clearing-actions.patch new file mode 100644 index 000000000000..a30e9b6e5b1d --- /dev/null +++ b/kde-frameworks/plasma/files/plasma-5.88.0-update-after-clearing-actions.patch @@ -0,0 +1,29 @@ +From 77fedf1f9919eb2cc07c8ecccdd70ad2a7343161 Mon Sep 17 00:00:00 2001 +From: Fushan Wen <qydwhotm...@gmail.com> +Date: Sat, 4 Dec 2021 18:08:43 +0800 +Subject: [PATCH] wallpaperinterface: Update "contextualActions" after clearing + actions + +After clearing the entire action collection, "contextualActions" needs +to be updated to remove invalid action pointers. + +BUG: 446195 +--- + src/scriptengines/qml/plasmoid/wallpaperinterface.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp b/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp +index 65adf838e..49bdb9512 100644 +--- a/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp ++++ b/src/scriptengines/qml/plasmoid/wallpaperinterface.cpp +@@ -115,6 +115,7 @@ void WallpaperInterface::syncWallpaperPackage() + } + + m_actions->clear(); ++ setProperty("contextualActions", QVariant::fromValue(contextualActions())); + m_pkg = KPackage::PackageLoader::self()->loadPackage(QStringLiteral("Plasma/Wallpaper")); + m_pkg.setPath(m_wallpaperPlugin); + if (!m_pkg.isValid()) { +-- +GitLab + diff --git a/kde-frameworks/plasma/plasma-5.88.0-r2.ebuild b/kde-frameworks/plasma/plasma-5.88.0-r2.ebuild index 8cf6ee9309bb..31c7abb64aaa 100644 --- a/kde-frameworks/plasma/plasma-5.88.0-r2.ebuild +++ b/kde-frameworks/plasma/plasma-5.88.0-r2.ebuild @@ -64,6 +64,8 @@ PATCHES=( "${FILESDIR}"/${P}-fix-misrenderings-with-transparency.patch # KDE-bug 305247 "${FILESDIR}"/${P}-fix-centered-text.patch # KDE-bug 442830 "${FILESDIR}"/${P}-reload-shared-renderers-if-changed-on-disk.patch # KDE-bug 445516 + "${FILESDIR}"/${P}-no-double-delete.patch # KDE-bug 446195 + "${FILESDIR}"/${P}-update-after-clearing-actions.patch # KDE-bug 446195 ) src_configure() {