Skip to content
  • Dima Ryazanov's avatar
    client: require WAYLAND_DISPLAY to be set · fb7e1302
    Dima Ryazanov authored and Pekka Paalanen's avatar Pekka Paalanen committed
    
    
    Although defaulting to wayland-0 seems convenient, it has an undesirable
    side effect: clients may unintentionally connect to the wrong compositor.
    Generally, it's safer to fail instead. Here's a real example:
    
    In Fedora 22, Gtk+ prefers Wayland over X11, though the default session is still
    a normal X11 Gnome session. When you launch a Gtk+ app, it will try Wayland,
    fail, then try X11, and succesfully start up. That works fine.
    
    Now suppose you launch Weston while running the Gnome session. Suddenly, all
    of the Gtk+ apps launched from Gnome will show up inside Weston instead.
    That's unexpected. There's also no good way to prevent that from happening
    (other than perhaps setting WAYLAND_DISPLAY to an invalid value when launching
    an app).
    
    Not using wayland-0 as the default will solve that problem: an app launched
    from the X11 Gnome session will use the X11 backend regardless of whether
    there's a wayland compositor running at the same time.
    
    Everything else should work as before. The compositor already sets
    the WAYLAND_DISPLAY when starting the session, so the lack of the default value
    should not make a difference to the user.
    
    Signed-off-by: default avatarDima Ryazanov <dima@gmail.com>
    Acked-by: Pekka Paalanen's avatarPekka Paalanen <ppaalanen@gmail.com>
    Acked-by: default avatarGiulio Camuffo <giuliocamuffo@gmail.com>
    Acked-by: Daniel Stone's avatarDaniel Stone <daniel@fooishbar.org>
    Acked-by: default avatarJasper St. Pierre <jstpierre@mecheye.net>
    Reviewed-by: default avatarRyo Munakata <ryomnktml@gmail.com>
    
    [Pekka: dropped the wayland-server.c hunk, adjusted summary]
    
    Signed-off-by: default avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
    fb7e1302