Although I personally like the current behavior, I think this revert is reasonable.
Acked-By: Ryo Munakata <ryomnk...@gmail.com> Thanks. On Mon, 17 Aug 2015 16:17:57 +0300 Pekka Paalanen <ppaala...@gmail.com> wrote: > From: Pekka Paalanen <pekka.paala...@collabora.co.uk> > > This reverts commit fb7e13021730d0a5516ecbd3712ea4235e05d24d. > > Developers have been trying to reduce the number of by default required > environment variables, and the mentioned commit is a step backwards in > that sense. The fundamental assumption is that a user has only one main > (Wayland) display server where all programs should connect to by > default, and do so with an a priori known socket name. > > The commit also broke various use cases in the wild, some accidentally > due to other causes, some intentionally. This revert allows those use > cases to continue. > > The original problem of running Weston in a window in an existing GNOME > X11 session and getting applications unintentionally launched into > Weston can be circumvented by letting Weston use a non-default socket > name, leaving wayland-0 unused. > > Discussion: > http://lists.freedesktop.org/archives/wayland-devel/2015-August/023927.html > http://lists.freedesktop.org/archives/wayland-devel/2015-August/023937.html > > Cc: Dima Ryazanov <d...@gmail.com> > Cc: Giulio Camuffo <giuliocamu...@gmail.com> > Cc: Daniel Stone <dan...@fooishbar.org> > Cc: Jasper St. Pierre <jstpie...@mecheye.net> > Cc: Ryo Munakata <ryomnk...@gmail.com> > Cc: Ray Strode <halfl...@gmail.com> > Cc: Peter Hutterer <peter.hutte...@who-t.net> > Cc: Matthias Clasen <mcla...@redhat.com> > Cc: Sjoerd Simons <sjoerd.sim...@collabora.co.uk> > Signed-off-by: Pekka Paalanen <pekka.paala...@collabora.co.uk> > --- > doc/man/wl_display_connect.xml | 5 +++-- > doc/publican/sources/Protocol.xml | 8 ++++---- > src/wayland-client.c | 10 ++++------ > 3 files changed, 11 insertions(+), 12 deletions(-) > > diff --git a/doc/man/wl_display_connect.xml b/doc/man/wl_display_connect.xml > index ded3cbd..7e6e05c 100644 > --- a/doc/man/wl_display_connect.xml > +++ b/doc/man/wl_display_connect.xml > @@ -57,8 +57,9 @@ > that was previously opened by a Wayland server. The server socket > must > be placed in <envar>XDG_RUNTIME_DIR</envar> for this function to > find it. The <varname>name</varname> argument specifies the name of > - the socket or <constant>NULL</constant> to use the default > - (which is the value of <envar>WAYLAND_DISPLAY</envar>). If > + the socket or <constant>NULL</constant> to use the default (which > is > + <constant>"wayland-0"</constant>). The environment variable > + <envar>WAYLAND_DISPLAY</envar> replaces the default value. If > <envar>WAYLAND_SOCKET</envar> is set, this function behaves like > <function>wl_display_connect_to_fd</function> with the > file-descriptor > number taken from the environment variable.</para> > diff --git a/doc/publican/sources/Protocol.xml > b/doc/publican/sources/Protocol.xml > index 9464953..477063b 100644 > --- a/doc/publican/sources/Protocol.xml > +++ b/doc/publican/sources/Protocol.xml > @@ -60,10 +60,10 @@ > <title>Wire Format</title> > <para> > The protocol is sent over a UNIX domain stream socket, where the > endpoint > - name is determined by the <emphasis>WAYLAND_DISPLAY</emphasis> > - environment variable. Its value will usually be > - <systemitem class="service">wayland-0</systemitem>. The protocol is > message-based. > - A message sent by a client to the server is called request. A message > + usually is named <systemitem class="service">wayland-0</systemitem> > + (although it can be changed via <emphasis>WAYLAND_DISPLAY</emphasis> > + in the environment). The protocol is message-based. A > + message sent by a client to the server is called request. A message > from the server to a client is called event. Every message is > structured as 32-bit words, values are represented in the host's > byte-order. > diff --git a/src/wayland-client.c b/src/wayland-client.c > index ffbca4b..09c594a 100644 > --- a/src/wayland-client.c > +++ b/src/wayland-client.c > @@ -764,11 +764,8 @@ connect_to_socket(const char *name) > > if (name == NULL) > name = getenv("WAYLAND_DISPLAY"); > - if (name == NULL) { > - wl_log("error: WAYLAND_DISPLAY not set in the environment.\n"); > - errno = ENOENT; > - return -1; > - } > + if (name == NULL) > + name = "wayland-0"; > > fd = wl_os_socket_cloexec(PF_LOCAL, SOCK_STREAM, 0); > if (fd < 0) > @@ -872,7 +869,8 @@ wl_display_connect_to_fd(int fd) > * \return A \ref wl_display object or \c NULL on failure > * > * Connect to the Wayland display named \c name. If \c name is \c NULL, > - * its value will be replaced with the WAYLAND_DISPLAY environment variable. > + * its value will be replaced with the WAYLAND_DISPLAY environment > + * variable if it is set, otherwise display "wayland-0" will be used. > * > * \memberof wl_display > */ > -- > 2.4.6 > -- Ryo Munakata <ryomnk...@gmail.com> _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel