[PATCH weston] screen-share: Set new environment variable to identify server display
Andrew Wedgbury
andrew.wedgbury at realvnc.com
Mon Apr 28 06:39:23 PDT 2014
Some background on this: I am writing a fullscreen shell implementation to
share Wayland displays over VNC, which can be launched in place of weston from
weston's screen-share module.
In screen-share, variables WAYLAND_DISPLAY and WAYLAND_SOCKET are removed from
the environment when launching the fullscreen shell server to prevent it from
connecting back to the original server in a circular manner (since the presence
of these would cause weston to use the wayland backend).
However, the fullscreen shell server may need to know the original server's
display name - to display a configuration UI, for example. This patch saves the
display name under a new environment variable "WAYLAND_SERVER_DISPLAY" before
removing it from the environment, so the fullscreen shell server can use it if
it needs to (the default fullscreen shell implementation in weston doesn't use
it currently). I picked the name "WAYLAND_SERVER_DISPLAY" as it is used in a
similar way to "WAYLAND_SERVER_SOCKET" in the screen-share module.
Signed-off-by: Andrew Wedgbury <andrew.wedgbury at realvnc.com>
---
src/screen-share.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/screen-share.c b/src/screen-share.c
index d3e3f05..b642072 100644
--- a/src/screen-share.c
+++ b/src/screen-share.c
@@ -1006,6 +1006,7 @@ weston_output_share(struct weston_output *output,
if (pid == 0) {
/* We don't want anything circular */
+ setenv("WAYLAND_SERVER_DISPLAY", getenv("WAYLAND_DISPLAY"), 1);
unsetenv("WAYLAND_DISPLAY");
unsetenv("WAYLAND_SOCKET");
--
1.9.2
More information about the wayland-devel
mailing list