summaryrefslogtreecommitdiff
path: root/kde-frameworks/kirigami/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-04-28 20:21:43 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-04-28 20:21:43 +0100
commit40aaaa64e86ba6710bbeb31c4615a6ce80e75e11 (patch)
tree758c221bad35c9288d0bd6df9c7dfc226728e52c /kde-frameworks/kirigami/files
parent8d5dbd847cbc704a6a06405856e94b461011afe3 (diff)
gentoo resync : 28.04.2021
Diffstat (limited to 'kde-frameworks/kirigami/files')
-rw-r--r--kde-frameworks/kirigami/files/kirigami-5.77.0-no-reverseTwinsChanged-destr-FormLayout.patch35
-rw-r--r--kde-frameworks/kirigami/files/kirigami-5.80.0-fix-crash-in-SizeGroup.patch41
2 files changed, 41 insertions, 35 deletions
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
deleted file mode 100644
index 5bda9da38249..000000000000
--- a/kde-frameworks/kirigami/files/kirigami-5.77.0-no-reverseTwinsChanged-destr-FormLayout.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From b4a6c562cde4e064494e261bc3f64000cbf628a5 Mon Sep 17 00:00:00 2001
-From: Nicolas Fella <nicolas.fella@gmx.de>
-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/files/kirigami-5.80.0-fix-crash-in-SizeGroup.patch b/kde-frameworks/kirigami/files/kirigami-5.80.0-fix-crash-in-SizeGroup.patch
new file mode 100644
index 000000000000..7d13d2fa1bfa
--- /dev/null
+++ b/kde-frameworks/kirigami/files/kirigami-5.80.0-fix-crash-in-SizeGroup.patch
@@ -0,0 +1,41 @@
+From 29dabab2f536827bc1ecec63f5a0b0a76f0809e5 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Tue, 9 Mar 2021 14:30:44 +0000
+Subject: [PATCH] Fix potential crash in SizeGroup
+
+SizeGroup keeps a cache of a list of items, and when one updates does
+calculations based on all items.
+
+This list is stored as a list of QPointers as we don't explicitly track
+deletion.
+
+We have a list of items and guard for deletion, but they're QML owned.
+So there's a point in time when it's pending deletion with the garbage
+collector but the lower level object isn't managed by an engine.
+
+As we go via QQmlProperty(item, QStringLiteral("Layout.preferredWidth"),
+qmlContext(item)).write(maxWidth) this is problematic.
+
+BUG: 434079
+---
+ src/sizegroup.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/sizegroup.cpp b/src/sizegroup.cpp
+index 2035b6eb..a9a0ebf8 100644
+--- a/src/sizegroup.cpp
++++ b/src/sizegroup.cpp
+@@ -98,6 +98,10 @@ void SizeGroup::adjustItems(Mode whatChanged)
+ continue;
+ }
+
++ if (!qmlEngine(item)) {
++ continue;
++ }
++
+ switch (m_mode) {
+ case Mode::Width:
+ QQmlProperty(item, QStringLiteral("Layout.preferredWidth"), qmlContext(item)).write(maxWidth);
+--
+GitLab
+