window: Ensure that visible_to_compositor is set when unmanaging
visible_to_compositor should always be in sync with show_window / hide_window calls, even when unmananging. This fixes a crash where we call sync_window_state when the window is unmanaging, since we use visible_to_compositor to determine whether the compositor will crash. This is actually wrong; we should be using the knowledge about whether we have called add_window / remove_window. We'll introduce this with a new boolean next time.
This commit is contained in:
parent
e10fd19d24
commit
ed9dbf6aa2
@ -1469,8 +1469,11 @@ meta_window_unmanage (MetaWindow *window,
|
|||||||
meta_wayland_surface_window_unmanaged (window->surface);
|
meta_wayland_surface_window_unmanaged (window->surface);
|
||||||
|
|
||||||
if (window->visible_to_compositor)
|
if (window->visible_to_compositor)
|
||||||
meta_compositor_hide_window (window->display->compositor, window,
|
{
|
||||||
META_COMP_EFFECT_DESTROY);
|
window->visible_to_compositor = FALSE;
|
||||||
|
meta_compositor_hide_window (window->display->compositor, window,
|
||||||
|
META_COMP_EFFECT_DESTROY);
|
||||||
|
}
|
||||||
|
|
||||||
meta_compositor_remove_window (window->display->compositor, window);
|
meta_compositor_remove_window (window->display->compositor, window);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user