diff --git a/src/bin/entrance_gui.c b/src/bin/entrance_gui.c index df959a7..94c5e79 100755 --- a/src/bin/entrance_gui.c +++ b/src/bin/entrance_gui.c @@ -662,6 +662,7 @@ static Eina_Bool _entrance_gui_cb_window_property(void *data EINA_UNUSED, int type EINA_UNUSED, void *event_info) { Ecore_X_Event_Window_Property *ev; + char *name; ev = event_info; if (ev->atom == ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK) @@ -670,7 +671,9 @@ _entrance_gui_cb_window_property(void *data EINA_UNUSED, int type EINA_UNUSED, v elm_exit(); } - char *name = ecore_x_window_prop_string_get(ecore_x_window_root_get(ev->win), ECORE_X_ATOM_NET_WM_NAME); + /* Adding this avoid us to launch entrance_client with a wm anymore ... */ + name = ecore_x_window_prop_string_get(ecore_x_window_root_get(ev->win), + ECORE_X_ATOM_NET_WM_NAME); if (name) { PT("screen managed though not compliant\n"); diff --git a/src/daemon/entrance.c b/src/daemon/entrance.c index b3dfc95..6b3581c 100644 --- a/src/daemon/entrance.c +++ b/src/daemon/entrance.c @@ -317,7 +317,7 @@ main (int argc, char ** argv) entrance_user = getenv("ENTRANCE_USER"); if (entrance_user) { - char *quit, *x_pid_char; + char *quit; entrance_session_init(dname); entrance_session_end(entrance_user); entrance_session_shutdown(); @@ -328,11 +328,6 @@ main (int argc, char ** argv) PT("Last DE Session quit with error!\n"); } PT("ending xserver\n"); - x_pid_char = getenv("ENTRANCE_XPID"); - if (x_pid_char) - kill(atoi(x_pid_char), SIGTERM); - else - PT("No Xserver found, Strange!\n"); entrance_xserver_end(); _remove_lock(); PT("Entrance will quit, bye bye :).\n"); diff --git a/src/daemon/entrance_xserver.c b/src/daemon/entrance_xserver.c index 8c8c3f0..d1d1c96 100644 --- a/src/daemon/entrance_xserver.c +++ b/src/daemon/entrance_xserver.c @@ -126,7 +126,12 @@ entrance_xserver_init(Entrance_X_Cb start, const char *dname) void entrance_xserver_end(void) { + const char *xpid; PT("xserver end\n"); + xpid = getenv("ENTRANCE_XPID"); + if (xpid) + kill(atoi(xpid), SIGTERM); + unsetenv("ENTRANCE_XPID"); }