commit:     877fc600fd6370f74b9d2cc55b946bd1f8c1c1ea
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 23 13:05:31 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 13:29:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=877fc600

kde-frameworks/kirigami: Fix runtime crash in e.g. systemsettings

Upstream commit b4a6c562cde4e064494e261bc3f64000cbf628a5

KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=428461
KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=431419
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...0-no-reverseTwinsChanged-destr-FormLayout.patch | 35 +++++++++++++++
 kde-frameworks/kirigami/kirigami-5.77.0-r1.ebuild  | 51 ++++++++++++++++++++++
 kde-frameworks/kirigami/kirigami-5.78.0-r1.ebuild  | 51 ++++++++++++++++++++++
 3 files changed, 137 insertions(+)

diff --git 
a/kde-frameworks/kirigami/files/kirigami-5.77.0-no-reverseTwinsChanged-destr-FormLayout.patch
 
b/kde-frameworks/kirigami/files/kirigami-5.77.0-no-reverseTwinsChanged-destr-FormLayout.patch
new file mode 100644
index 00000000000..5bda9da3824
--- /dev/null
+++ 
b/kde-frameworks/kirigami/files/kirigami-5.77.0-no-reverseTwinsChanged-destr-FormLayout.patch
@@ -0,0 +1,35 @@
+From b4a6c562cde4e064494e261bc3f64000cbf628a5 Mon Sep 17 00:00:00 2001
+From: Nicolas Fella <[email protected]>
+Date: Thu, 14 Jan 2021 15:23:39 +0100
+Subject: [PATCH] Don't manually call reverseTwinsChanged when destructing
+ FormLayout
+
+This line causes a crash when destructing the screenlocker KCM.
+It doesn't seem to be caused by reverseTwinsChanged itself but rather by
+accessing the Qt object. I don't fully undestand the root cause.
+
+However the call itself appears to be unnecessary since in the line
+above we write to reverseTwins and that triggers the changed signal if
+needed.
+
+BUG: 431419
+BUG: 428461
+---
+ src/controls/FormLayout.qml | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/controls/FormLayout.qml b/src/controls/FormLayout.qml
+index 74292fda..a27903f2 100644
+--- a/src/controls/FormLayout.qml
++++ b/src/controls/FormLayout.qml
+@@ -84,7 +84,6 @@ Item {
+     Component.onDestruction: {
+         for (let i in twinFormLayouts) {
+             twinFormLayouts[i].children[0].reverseTwins = 
twinFormLayouts[i].children[0].reverseTwins.filter(function(value, index, arr){ 
return value != root;})
+-            Qt.callLater(() => 
twinFormLayouts[i].children[0].reverseTwinsChanged());
+         }
+     }
+     GridLayout {
+-- 
+GitLab
+

diff --git a/kde-frameworks/kirigami/kirigami-5.77.0-r1.ebuild 
b/kde-frameworks/kirigami/kirigami-5.77.0-r1.ebuild
new file mode 100644
index 00000000000..ddd74143a26
--- /dev/null
+++ b/kde-frameworks/kirigami/kirigami-5.77.0-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_EXAMPLES="true"
+ECM_QTHELP="false"
+ECM_TEST="true"
+KDE_ORG_NAME="${PN}2"
+QTMIN=5.15.1
+inherit ecm kde.org
+
+DESCRIPTION="Lightweight user interface framework for mobile and convergent 
applications"
+HOMEPAGE="https://techbase.kde.org/Kirigami";
+EGIT_REPO_URI="${EGIT_REPO_URI/${PN}2/${PN}}"
+
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE=""
+
+# requires package to already be installed
+RESTRICT+=" test"
+
+BDEPEND="
+       >=dev-qt/linguist-tools-${QTMIN}:5
+"
+DEPEND="
+       >=dev-qt/qtconcurrent-${QTMIN}:5
+       >=dev-qt/qtdbus-${QTMIN}:5
+       >=dev-qt/qtdeclarative-${QTMIN}:5
+       >=dev-qt/qtgui-${QTMIN}:5
+       >=dev-qt/qtnetwork-${QTMIN}:5
+       >=dev-qt/qtquickcontrols2-${QTMIN}:5
+       >=dev-qt/qtsvg-${QTMIN}:5
+"
+RDEPEND="${DEPEND}
+       >=dev-qt/qtgraphicaleffects-${QTMIN}:5
+"
+
+PATCHES=(
+       # KDE-Bugs #428461, #431419
+       "${FILESDIR}/${P}-no-reverseTwinsChanged-destr-FormLayout.patch"
+)
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_EXAMPLES=$(usex examples)
+       )
+
+       ecm_src_configure
+}

diff --git a/kde-frameworks/kirigami/kirigami-5.78.0-r1.ebuild 
b/kde-frameworks/kirigami/kirigami-5.78.0-r1.ebuild
new file mode 100644
index 00000000000..e44584cc323
--- /dev/null
+++ b/kde-frameworks/kirigami/kirigami-5.78.0-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_EXAMPLES="true"
+ECM_QTHELP="false"
+ECM_TEST="true"
+KDE_ORG_NAME="${PN}2"
+QTMIN=5.15.1
+inherit ecm kde.org
+
+DESCRIPTION="Lightweight user interface framework for mobile and convergent 
applications"
+HOMEPAGE="https://techbase.kde.org/Kirigami";
+EGIT_REPO_URI="${EGIT_REPO_URI/${PN}2/${PN}}"
+
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE=""
+
+# requires package to already be installed
+RESTRICT+=" test"
+
+BDEPEND="
+       >=dev-qt/linguist-tools-${QTMIN}:5
+"
+DEPEND="
+       >=dev-qt/qtconcurrent-${QTMIN}:5
+       >=dev-qt/qtdbus-${QTMIN}:5
+       >=dev-qt/qtdeclarative-${QTMIN}:5
+       >=dev-qt/qtgui-${QTMIN}:5
+       >=dev-qt/qtnetwork-${QTMIN}:5
+       >=dev-qt/qtquickcontrols2-${QTMIN}:5
+       >=dev-qt/qtsvg-${QTMIN}:5
+"
+RDEPEND="${DEPEND}
+       >=dev-qt/qtgraphicaleffects-${QTMIN}:5
+"
+
+PATCHES=(
+       # KDE-Bugs #428461, #431419
+       "${FILESDIR}/${PN}-5.77.0-no-reverseTwinsChanged-destr-FormLayout.patch"
+)
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_EXAMPLES=$(usex examples)
+       )
+
+       ecm_src_configure
+}

Reply via email to