[mutter/wip/carlosg/xwayland-on-demand: 15/18] x11: Shuffle x11-stack destruction in MetaX11Display dispose



commit 3e579e0fe1d880bff3502897cbc46857de75a921
Author: Carlos Garnacho <carlosg gnome org>
Date:   Fri Jun 14 16:49:04 2019 +0200

    x11: Shuffle x11-stack destruction in MetaX11Display dispose
    
    Unmanaging the windows may trigger stack operations that we later try
    to synchronize despite being in dispose() stage. This may trigger
    MetaStackTracker warnings when trying to apply those operations.
    
    Switching destruction order (First dispose the X11 stack representation,
    then unmanage windows) won't trigger further stack changes on X11 windows
    after having signaled MetaDisplay::x11-display-closing.
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/709

 src/x11/meta-x11-display.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/src/x11/meta-x11-display.c b/src/x11/meta-x11-display.c
index 6f20797e6..0fb71a260 100644
--- a/src/x11/meta-x11-display.c
+++ b/src/x11/meta-x11-display.c
@@ -135,11 +135,11 @@ meta_x11_display_dispose (GObject *object)
 
   meta_x11_display_ungrab_keys (x11_display);
 
+  g_clear_object (&x11_display->x11_stack);
+
   meta_x11_selection_shutdown (x11_display);
   meta_x11_display_unmanage_windows (x11_display);
 
-  g_clear_object (&x11_display->x11_stack);
-
   if (x11_display->ui)
     {
       meta_ui_free (x11_display->ui);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]