Skip to content

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 wl_display_roundtrip() continuously.

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 negative.

Signed-off-by: Olivier Fourdan

Merge request reports