Olivier Fourdan 6ed36cd6e3 wayland: No xdg-output events without a logical monitor
To avoid a known race condition in the wl_output protocol documented in
https://phabricator.freedesktop.org/T7722, mutter delays the `wl_output`
destruction but nullify the `logical_monitor` associated with the
`wl_output` and the binding routine `bind_output()` makes sure not to
send wl_output events if the `logical_monitor` is `NULL` (see commit
1923db97).

The binding routine for `xdg_output` however does not check for such a
condition, hence if the output configuration changes while a client is
binding to xdg-output (typically Xwayland at startup), mutter would
crash while trying to access the `logical_monitor` which was nullified
by the change in configuration.

Just like `bind_output()` does for wl_output, do not send xdg-output
events if there is no `logical_monitor` yet.

Closes: https://gitlab.gnome.org/GNOME/mutter/issues/194

(cherry picked from commit 68ec9ac017157def9b7c25dd8141dc0e93d9f918)
2018-09-27 11:05:35 +02:00
..
2018-05-07 22:06:02 +02:00
2018-07-30 20:29:03 +02:00
2018-05-07 22:29:42 +02:00
2015-07-05 22:01:59 -07:00
2015-07-05 22:01:59 -07:00