Backport to 1.20 - xwayland: Fix infinite loop at startup
Mutter recently added headless tests, and when running those tests the Wayland compositor runs for a very short time.
Xwayland is spawned by the Wayland compositor and upon startup will query the various Wayland protocol supported by the compositor.
To do so, it will do a roundtrip to the Wayland server waiting for events it expects.
If the Wayland compositor terminates before Xwayland has got the replies
it expects, it will loop indefinitely calling
To avoid that issue, add a new
xwl_screen_roundtrip() that checks for
the returned value from
wl_display_roundtrip() and fails if it is
(cherry picked from commit 785e5906)