1 |
commit: 74884494b7e14ffb754087704badfa70750e593a |
2 |
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Aug 7 17:23:14 2022 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Aug 7 20:38:44 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74884494 |
7 |
|
8 |
kde-plasma/kwin: backends/drm: fix blob updating |
9 |
|
10 |
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=449285 |
11 |
|
12 |
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> |
13 |
|
14 |
.../files/kwin-5.24.6-drm-fix-blob-updating.patch | 38 ++++++++++++++++++++++ |
15 |
.../files/kwin-5.25.4-drm-fix-blob-updating.patch | 38 ++++++++++++++++++++++ |
16 |
kde-plasma/kwin/kwin-5.24.6-r2.ebuild | 1 + |
17 |
kde-plasma/kwin/kwin-5.25.4-r1.ebuild | 2 ++ |
18 |
4 files changed, 79 insertions(+) |
19 |
|
20 |
diff --git a/kde-plasma/kwin/files/kwin-5.24.6-drm-fix-blob-updating.patch b/kde-plasma/kwin/files/kwin-5.24.6-drm-fix-blob-updating.patch |
21 |
new file mode 100644 |
22 |
index 000000000000..45d231a70f1b |
23 |
--- /dev/null |
24 |
+++ b/kde-plasma/kwin/files/kwin-5.24.6-drm-fix-blob-updating.patch |
25 |
@@ -0,0 +1,38 @@ |
26 |
+From 3af37c8a29af36eb773b0684237d61b2bd6b81f9 Mon Sep 17 00:00:00 2001 |
27 |
+From: Xaver Hugl <xaver.hugl@×××××.com> |
28 |
+Date: Thu, 4 Aug 2022 15:36:26 +0200 |
29 |
+Subject: [PATCH] backends/drm: fix blob updating |
30 |
+ |
31 |
+Two things about the code were wrong: |
32 |
+1. m_current is used in updateBlob() but was only updated afterwards |
33 |
+2. the assumption that the property having the same ID means it has the |
34 |
+same blob contents is not always true |
35 |
+ |
36 |
+BUG: 449285 |
37 |
+ |
38 |
+ |
39 |
+(cherry picked from commit 97939ceae864aef2f50e117496f548555877b4ea) |
40 |
+--- |
41 |
+ src/backends/drm/drm_property.cpp | 6 ++---- |
42 |
+ 1 file changed, 2 insertions(+), 4 deletions(-) |
43 |
+ |
44 |
+diff --git a/src/backends/drm/drm_property.cpp b/src/backends/drm/drm_property.cpp |
45 |
+index 8ab0dc0e5a..b2a2deda12 100644 |
46 |
+--- a/src/backends/drm/drm_property.cpp |
47 |
++++ b/src/backends/drm/drm_property.cpp |
48 |
+@@ -112,10 +112,8 @@ bool DrmProperty::needsCommit() const |
49 |
+ |
50 |
+ void DrmProperty::setCurrent(uint64_t value) |
51 |
+ { |
52 |
+- if (m_current != value) { |
53 |
+- updateBlob(); |
54 |
+- m_current = value; |
55 |
+- } |
56 |
++ m_current = value; |
57 |
++ updateBlob(); |
58 |
+ } |
59 |
+ |
60 |
+ uint64_t DrmProperty::current() const |
61 |
+-- |
62 |
+GitLab |
63 |
+ |
64 |
|
65 |
diff --git a/kde-plasma/kwin/files/kwin-5.25.4-drm-fix-blob-updating.patch b/kde-plasma/kwin/files/kwin-5.25.4-drm-fix-blob-updating.patch |
66 |
new file mode 100644 |
67 |
index 000000000000..282913620c7b |
68 |
--- /dev/null |
69 |
+++ b/kde-plasma/kwin/files/kwin-5.25.4-drm-fix-blob-updating.patch |
70 |
@@ -0,0 +1,38 @@ |
71 |
+From 9a81567777f94e2e6c1a121f1d86dd2bdea83adf Mon Sep 17 00:00:00 2001 |
72 |
+From: Xaver Hugl <xaver.hugl@×××××.com> |
73 |
+Date: Thu, 4 Aug 2022 15:36:26 +0200 |
74 |
+Subject: [PATCH] backends/drm: fix blob updating |
75 |
+ |
76 |
+Two things about the code were wrong: |
77 |
+1. m_current is used in updateBlob() but was only updated afterwards |
78 |
+2. the assumption that the property having the same ID means it has the |
79 |
+same blob contents is not always true |
80 |
+ |
81 |
+BUG: 449285 |
82 |
+ |
83 |
+ |
84 |
+(cherry picked from commit 97939ceae864aef2f50e117496f548555877b4ea) |
85 |
+--- |
86 |
+ src/backends/drm/drm_property.cpp | 6 ++---- |
87 |
+ 1 file changed, 2 insertions(+), 4 deletions(-) |
88 |
+ |
89 |
+diff --git a/src/backends/drm/drm_property.cpp b/src/backends/drm/drm_property.cpp |
90 |
+index c9f7718abd..cee80d043a 100644 |
91 |
+--- a/src/backends/drm/drm_property.cpp |
92 |
++++ b/src/backends/drm/drm_property.cpp |
93 |
+@@ -112,10 +112,8 @@ bool DrmProperty::needsCommit() const |
94 |
+ |
95 |
+ void DrmProperty::setCurrent(uint64_t value) |
96 |
+ { |
97 |
+- if (m_current != value) { |
98 |
+- updateBlob(); |
99 |
+- m_current = value; |
100 |
+- } |
101 |
++ m_current = value; |
102 |
++ updateBlob(); |
103 |
+ } |
104 |
+ |
105 |
+ uint64_t DrmProperty::current() const |
106 |
+-- |
107 |
+GitLab |
108 |
+ |
109 |
|
110 |
diff --git a/kde-plasma/kwin/kwin-5.24.6-r2.ebuild b/kde-plasma/kwin/kwin-5.24.6-r2.ebuild |
111 |
index 7fd2b9654114..bb3d86644b6b 100644 |
112 |
--- a/kde-plasma/kwin/kwin-5.24.6-r2.ebuild |
113 |
+++ b/kde-plasma/kwin/kwin-5.24.6-r2.ebuild |
114 |
@@ -102,6 +102,7 @@ PDEPEND=">=kde-plasma/kde-cli-tools-${PVCUT}:5" |
115 |
PATCHES=( |
116 |
"${FILESDIR}/${P}-emit-rowsChanged.patch" |
117 |
"${FILESDIR}/${P}-fix-color-picker.patch" # KDE-bug 454974 |
118 |
+ "${FILESDIR}/${P}-drm-fix-blob-updating.patch" # KDE-bug 449285 |
119 |
) |
120 |
|
121 |
src_prepare() { |
122 |
|
123 |
diff --git a/kde-plasma/kwin/kwin-5.25.4-r1.ebuild b/kde-plasma/kwin/kwin-5.25.4-r1.ebuild |
124 |
index ca0aa6e8d72d..44b1802e9117 100644 |
125 |
--- a/kde-plasma/kwin/kwin-5.25.4-r1.ebuild |
126 |
+++ b/kde-plasma/kwin/kwin-5.25.4-r1.ebuild |
127 |
@@ -102,6 +102,8 @@ BDEPEND=" |
128 |
" |
129 |
PDEPEND=">=kde-plasma/kde-cli-tools-${PVCUT}:5" |
130 |
|
131 |
+PATCHES=( "${FILESDIR}/${P}-drm-fix-blob-updating.patch" ) # KDE-bug 449285 |
132 |
+ |
133 |
src_prepare() { |
134 |
ecm_src_prepare |
135 |
use multimedia || eapply "${FILESDIR}/${PN}-5.21.80-gstreamer-optional.patch" |