Blame SOURCES/0001-window-free-close-dialog-before-unmanaging-window-fr.patch

baa59a
From 376225cea044d050f8fc2923e7149d320150bab7 Mon Sep 17 00:00:00 2001
baa59a
From: Ray Strode <rstrode@redhat.com>
baa59a
Date: Mon, 29 Apr 2019 13:46:37 -0400
baa59a
Subject: [PATCH] window: free close dialog before unmanaging window from
baa59a
 compositor
baa59a
baa59a
When an application stops responding, the shell darkens its windows.
baa59a
baa59a
If a window from a not-responding application gets unmanaged
baa59a
then the shell will currently throw an exception trying to retrieve
baa59a
the now-dissociated window actor.
baa59a
baa59a
That leads to a "stuck window" ghost on screen and a traceback
baa59a
in the log.
baa59a
baa59a
This commit addresses the problem by making sure the effect is cleaned
baa59a
up before the actor is disocciated from its window.
baa59a
baa59a
https://gitlab.gnome.org/GNOME/mutter/issues/575
baa59a
---
baa59a
 src/core/window.c | 3 ++-
baa59a
 1 file changed, 2 insertions(+), 1 deletion(-)
baa59a
baa59a
diff --git a/src/core/window.c b/src/core/window.c
baa59a
index cc0813ac4..aa85806f1 100644
baa59a
--- a/src/core/window.c
baa59a
+++ b/src/core/window.c
baa59a
@@ -1388,6 +1388,8 @@ meta_window_unmanage (MetaWindow  *window,
baa59a
   meta_verbose ("Unmanaging %s\n", window->desc);
baa59a
   window->unmanaging = TRUE;
baa59a
 
baa59a
+  meta_window_free_delete_dialog (window);
baa59a
+
baa59a
 #ifdef HAVE_WAYLAND
baa59a
   /* This needs to happen for both Wayland and XWayland clients,
baa59a
    * so it can't be in MetaWindowWayland. */
baa59a
@@ -1510,7 +1512,6 @@ meta_window_unmanage (MetaWindow  *window,
baa59a
   meta_window_unqueue (window, META_QUEUE_CALC_SHOWING |
baa59a
                                META_QUEUE_MOVE_RESIZE |
baa59a
                                META_QUEUE_UPDATE_ICON);
baa59a
-  meta_window_free_delete_dialog (window);
baa59a
 
baa59a
   set_workspace_state (window, FALSE, NULL);
baa59a
 
baa59a
-- 
baa59a
2.23.0
baa59a