diff options
author | Chris Michael <cp.michael@samsung.com> | 2014-07-15 10:58:48 -0400 |
---|---|---|
committer | Chris Michael <cp.michael@samsung.com> | 2014-09-08 09:05:44 -0400 |
commit | 76c852b66a0e1e5a6dd2c53f6c23b3caeee65245 (patch) | |
tree | e9573911a5566dc6cafbefb7da75f2c89f943a07 | |
parent | 22e939c18a2ed3ea56023e9f03a551dfeaeac92c (diff) | |
download | enlightenment-76c852b66a0e1e5a6dd2c53f6c23b3caeee65245.tar.gz |
xwayland: Fix launching of XWayland server and pass proper display to
wl_client_create
Signed-off-by: Chris Michael <cp.michael@samsung.com>
-rw-r--r-- | src/modules/xwayland/e_mod_main.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/modules/xwayland/e_mod_main.c b/src/modules/xwayland/e_mod_main.c index 5ff6d555dc..dec6b880c8 100644 --- a/src/modules/xwayland/e_mod_main.c +++ b/src/modules/xwayland/e_mod_main.c @@ -164,7 +164,7 @@ static Eina_Bool _cb_xserver_event(void *data EINA_UNUSED, Ecore_Fd_Handler *hdlr EINA_UNUSED) { int socks[2], wms[2], fd; - char disp[8], s[8], *xserver = NULL; + char disp[8], s[8], xserver[PATH_MAX]; char abs_fd[8], unx_fd[8], wm_fd[8]; if (socketpair(AF_UNIX, (SOCK_STREAM | SOCK_CLOEXEC), 0, socks) < 0) @@ -200,10 +200,11 @@ _cb_xserver_event(void *data EINA_UNUSED, Ecore_Fd_Handler *hdlr EINA_UNUSED) /* ignore usr1 and have X send it to the parent process */ signal(SIGUSR1, SIG_IGN); - /* FIXME: need to get the patch of xwayland */ + /* FIXME: need to get the path of xwayland */ snprintf(disp, sizeof(disp), ":%d", exs->disp); - DBG("XWAYLAND: %s", XWAYLAND_BIN); + snprintf(xserver, sizeof(xserver), "%s", XWAYLAND_BIN); + DBG("\tLaunching XWayland: %s", xserver); if (execl(xserver, xserver, disp, "-rootless", "-listen", abs_fd, "-listen", unx_fd, "-wm", wm_fd, "-terminate", NULL) < 0) { @@ -216,7 +217,7 @@ fail: break; default: close(socks[1]); - exs->client = wl_client_create(exs->disp, socks[0]); + exs->client = wl_client_create(exs->wl_disp, socks[0]); close(wms[1]); exs->wm_fd = wms[0]; @@ -237,6 +238,8 @@ _cb_signal_event(void *data EINA_UNUSED, int type EINA_UNUSED, void *event EINA_ /* NB: SIGUSR1 comes from XWayland Server when it has finished * initialized. */ + DBG("XWayland Finished Init"); + /* TODO: create "window manager" process */ /* TODO: NB: @@ -256,6 +259,8 @@ e_modapi_init(E_Module *m) E_Comp *comp; char disp[8]; + DBG("LOAD XWAYLAND MODULE"); + /* try to get the running compositor */ if (!(comp = e_comp_get(NULL))) return NULL; |