Skip to content
  • Olivier Fourdan's avatar
    xwayland: Fix infinite loop at startup · 785e5906
    Olivier Fourdan authored
    
    
    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: default avatarOlivier Fourdan <ofourdan@redhat.com>
    Reviewed-by: default avatarRoman Gilg <subdiff@gmail.com>
    Reviewed-by: default avatarJonas Ådahl <jadahl@gmail.com>
    785e5906