[arch-commits] Commit in mutter/trunk (2 files)

Jan Steffens heftig at archlinux.org
Sun Jun 13 00:03:31 UTC 2021


    Date: Sunday, June 13, 2021 @ 00:03:30
  Author: heftig
Revision: 418100

40.2-2: FS#71236

Added:
  mutter/trunk/0001-renderer-native-Clear-pending-update-list-before-rep.patch
Modified:
  mutter/trunk/PKGBUILD

-----------------------------------------------------------------+
 0001-renderer-native-Clear-pending-update-list-before-rep.patch |   33 ++++++++++
 PKGBUILD                                                        |   11 ++-
 2 files changed, 41 insertions(+), 3 deletions(-)

Added: 0001-renderer-native-Clear-pending-update-list-before-rep.patch
===================================================================
--- 0001-renderer-native-Clear-pending-update-list-before-rep.patch	                        (rev 0)
+++ 0001-renderer-native-Clear-pending-update-list-before-rep.patch	2021-06-13 00:03:30 UTC (rev 418100)
@@ -0,0 +1,33 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl at gmail.com>
+Date: Sat, 12 Jun 2021 21:09:55 +0200
+Subject: [PATCH] renderer/native: Clear pending update list before
+ repopulating
+
+Before we did a simple copy, meaning the old list was overriden. Copy
+was too eager, as it meant views without modes to set was waited for,
+resulting in a dead lock. Instead only the relevant views were added to
+the list for view which had pending updates needed. What was missed was
+that the list was never cleared, meaning we just appended the new list
+on top of the old, causing issues.
+
+Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1846
+Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1843
+Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1844
+---
+ src/backends/native/meta-renderer-native.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/backends/native/meta-renderer-native.c b/src/backends/native/meta-renderer-native.c
+index a84f3025f..7e4af8fe0 100644
+--- a/src/backends/native/meta-renderer-native.c
++++ b/src/backends/native/meta-renderer-native.c
+@@ -831,7 +831,7 @@ meta_renderer_native_queue_modes_reset (MetaRendererNative *renderer_native)
+   MetaRenderer *renderer = META_RENDERER (renderer_native);
+   GList *l;
+ 
+-  g_list_free (renderer_native->pending_mode_set_views);
++  g_clear_list (&renderer_native->pending_mode_set_views, NULL);
+   for (l = meta_renderer_get_views (renderer); l; l = l->next)
+     {
+       ClutterStageView *stage_view = l->data;

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-06-12 23:21:16 UTC (rev 418099)
+++ PKGBUILD	2021-06-13 00:03:30 UTC (rev 418100)
@@ -4,7 +4,7 @@
 
 pkgname=mutter
 pkgver=40.2
-pkgrel=1
+pkgrel=2
 pkgdesc="A window manager for GNOME"
 url="https://gitlab.gnome.org/GNOME/mutter"
 arch=(x86_64)
@@ -19,8 +19,10 @@
 groups=(gnome)
 install=mutter.install
 _commit=d4269932528e28672a94cd965f8a5ee43481f127  # tags/40.2^0
-source=("git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit")
-sha256sums=('SKIP')
+source=("git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit"
+        0001-renderer-native-Clear-pending-update-list-before-rep.patch)
+sha256sums=('SKIP'
+            '8a861c2732e030fe2f19161539b0deb126ef0955a45d90fdf1fabd6390ca6f59')
 
 pkgver() {
   cd $pkgname
@@ -29,6 +31,9 @@
 
 prepare() {
   cd $pkgname
+
+  # https://bugs.archlinux.org/task/71236
+  git apply -3 ../0001-renderer-native-Clear-pending-update-list-before-rep.patch
 }
 
 build() {



More information about the arch-commits mailing list