window/wayland: Don't recursive indefinitely when updating monitor

When we update the main monitor, there is a rule that makes it so that
popup windows use the same main monitor as their parent. In the commit
f4d07caa38 the call that updates and
fetches the main monitor of the toplevel accidentally changed to update
from itself, causing a indefinite recursion eventually resulting in a
crash.

Closes: https://gitlab.gnome.org/GNOME/mutter/issues/279
(cherry picked from commit e191c21e04)
This commit is contained in:
Jonas Ådahl 2018-08-27 17:49:52 +02:00 committed by Ray Strode
parent 8a74b269a6
commit 60b62af343

View File

@ -392,7 +392,7 @@ meta_window_wayland_update_main_monitor (MetaWindow *window,
toplevel_window = meta_wayland_surface_get_toplevel_window (window->surface); toplevel_window = meta_wayland_surface_get_toplevel_window (window->surface);
if (toplevel_window != window) if (toplevel_window != window)
{ {
meta_window_update_monitor (window, flags); meta_window_update_monitor (toplevel_window, flags);
window->monitor = toplevel_window->monitor; window->monitor = toplevel_window->monitor;
return; return;
} }