window: Reset tile monitor number when untiling

Otherwise we'll end up trying to access the out of date state later.

Fixes the following test failure backtrace:

    #0  _g_log_abort ()
    #1  g_logv ()
    #2  g_log ()
    #3  meta_monitor_manager_get_logical_monitor_from_number ()
    #4  meta_window_get_work_area_for_monitor ()
    #5  meta_window_get_tile_area ()
    #6  constrain_maximization ()
    #7  do_all_constraints ()
    #8  meta_window_constrain ()
    #9  meta_window_move_resize_internal ()
    #10 meta_window_tile ()

https://gitlab.gnome.org/GNOME/mutter/merge_requests/912
This commit is contained in:
Jonas Ådahl 2019-11-01 13:40:04 +01:00 committed by Georges Basile Stavracas Neto
parent 9ed33dc72e
commit 3df4348f23

View File

@ -3192,7 +3192,10 @@ meta_window_tile (MetaWindow *window,
/* Don't do anything if no tiling is requested */ /* Don't do anything if no tiling is requested */
if (window->tile_mode == META_TILE_NONE) if (window->tile_mode == META_TILE_NONE)
return; {
window->tile_monitor_number = -1;
return;
}
if (window->tile_mode == META_TILE_MAXIMIZED) if (window->tile_mode == META_TILE_MAXIMIZED)
directions = META_MAXIMIZE_BOTH; directions = META_MAXIMIZE_BOTH;