x11: Do not queue stack operation for guard window

In the case mutter is a x11 compositor, it doesn't matter much
since the stack tracker will go away soon. In the case this is a
wayland compositor with mandatory Xwayland, it matters even less
since the session would be shutting down in those paths.

But if this a wayland compositor that can start Xwayland on demand,
this is even harmful, as the MetaStackTracker should be cleared of
x11 windows at this moment, and we actually did right before dispose
on ::x11-display-closing.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/709
This commit is contained in:
Carlos Garnacho 2019-05-24 23:27:40 +02:00 committed by Carlos Garnacho
parent ca51cd8488
commit d3d1ff1aae

View File

@ -182,21 +182,8 @@ meta_x11_display_dispose (GObject *object)
if (x11_display->guard_window != None) if (x11_display->guard_window != None)
{ {
MetaStackTracker *stack_tracker = x11_display->display->stack_tracker;
if (stack_tracker)
{
unsigned long serial;
serial = XNextRequest (x11_display->xdisplay);
meta_stack_tracker_record_remove (stack_tracker,
x11_display->guard_window,
serial);
}
XUnmapWindow (x11_display->xdisplay, x11_display->guard_window); XUnmapWindow (x11_display->xdisplay, x11_display->guard_window);
XDestroyWindow (x11_display->xdisplay, x11_display->guard_window); XDestroyWindow (x11_display->xdisplay, x11_display->guard_window);
x11_display->guard_window = None; x11_display->guard_window = None;
} }