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
2015-07-06 00:52:18 -07:00
2018-04-10 17:58:12 +02:00
2014-03-18 20:37:35 -04:00
2017-05-11 13:45:44 +02:00
2018-07-18 23:12:51 +02:00
2016-04-27 20:37:47 +02:00
2014-07-31 17:50:28 +02:00
2018-07-18 23:12:51 +02:00
Description
91 MiB
Languages
C 98.9%
Meson 0.7%
Python 0.3%