wayland: Don't "probe" for a Wayland compositor if started from compositor

In the case that the client is started directly by the compositor the
WAYLAND_SOCKET environment variable is set containing the fd to use that was
created by a socketpair.

This environment variable is consumed by a call to wl_display_connect so a
second call will not take advantage of it.

https://bugzilla.gnome.org/show_bug.cgi?id=697673
This commit is contained in:
Rob Bradford
2013-04-12 18:39:20 +01:00
parent b0121ed0a1
commit bff5b2ae3e

View File

@@ -59,6 +59,12 @@ gdk_wayland_display_manager_initable_init (GInitable *initable,
{
struct wl_display *wl_display;
/* Set by the compositor when launching a special client - and it gets reset
* by wl_display_connect so we must avoid calling it twice
*/
if (g_getenv ("WAYLAND_SOCKET"))
return TRUE;
/* check that a connection to the default display is possible */
wl_display = wl_display_connect (gdk_get_display_arg_name ());