Date: Wednesday, February 1, 2023 @ 17:50:36
  Author: heftig
Revision: 467741

43.2-2: FS#71250 Add patch to work around exit crashes

Added:
  gnome-shell/trunk/0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
Modified:
  gnome-shell/trunk/PKGBUILD

------------------------------------------------------+
 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch |   28 +++++++++++++++++
 PKGBUILD                                             |   10 ++++--
 2 files changed, 36 insertions(+), 2 deletions(-)

Added: 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
===================================================================
--- 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch                        
        (rev 0)
+++ 0001-main-Leak-the-GJS-context-and-ShellGlobal.patch        2023-02-01 
17:50:36 UTC (rev 467741)
@@ -0,0 +1,28 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <[email protected]>
+Date: Wed, 6 Oct 2021 10:00:43 +0200
+Subject: [PATCH] main: Leak the GJS context and ShellGlobal
+
+There are many crash-on-exit happening as a side effect of destroying
+the GJS context. Work around these until we have a better solution by
+leaking them.
+---
+ src/main.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/main.c b/src/main.c
+index 29275cda0725..2311a74bd110 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -589,9 +589,11 @@ main (int argc, char **argv)
+ 
+   shell_profiler_shutdown ();
+ 
++#if 0
+   g_debug ("Doing final cleanup");
+   _shell_global_destroy_gjs_context (shell_global_get ());
+   g_object_unref (shell_global_get ());
++#endif
+ 
+   return ecode;
+ }

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2023-02-01 16:59:04 UTC (rev 467740)
+++ PKGBUILD    2023-02-01 17:50:36 UTC (rev 467741)
@@ -4,7 +4,7 @@
 
 pkgname=gnome-shell
 pkgver=43.2
-pkgrel=1
+pkgrel=2
 epoch=1
 pkgdesc="Next generation desktop shell"
 url="https://wiki.gnome.org/Projects/GnomeShell";
@@ -57,9 +57,11 @@
 source=(
   "git+https://gitlab.gnome.org/GNOME/gnome-shell.git#commit=$_commit";
   "git+https://gitlab.gnome.org/GNOME/libgnome-volume-control.git";
+  0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
 )
 b2sums=('SKIP'
-        'SKIP')
+        'SKIP'
+        
'5636fd813bc0aeafbdd52eb6335ef79b5801b800e332119b3d127a6cd188aa24051ebc718449f22bea7bedc37347ff98c7d491b35d84f573f0e4cff2046117d4')
 
 pkgver() {
   cd gnome-shell
@@ -69,6 +71,10 @@
 prepare() {
   cd gnome-shell
 
+  # https://bugs.archlinux.org/task/71250
+  # https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5560#note_1636124
+  git apply -3 ../0001-main-Leak-the-GJS-context-and-ShellGlobal.patch
+
   git submodule init
   git submodule set-url subprojects/gvc "$srcdir/libgnome-volume-control"
   git -c protocol.file.allow=always submodule update

Reply via email to