efl-wl: add EFL_WL_DEBUG env variable for enabling wayland debug
authorMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 11 Aug 2017 22:43:15 +0000 (18:43 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 11 Aug 2017 22:43:13 +0000 (18:43 -0400)
@feature

src/lib/efl_wl/efl_wl.c

index 069e4ed..5c4fb32 100644 (file)
@@ -4969,7 +4969,7 @@ static void
 comp_smart_add(Evas_Object *obj)
 {
    Comp *c;
-   char *env;
+   char *env, *dbg = NULL;
 
    c = calloc(1, sizeof(Comp));
    c->wayland_time_base = ecore_loop_time_get();
@@ -4977,7 +4977,19 @@ comp_smart_add(Evas_Object *obj)
    evas_object_smart_data_set(obj, c);
    env = getenv("WAYLAND_DISPLAY");
    if (env) env = strdup(env);
+
+   if (getenv("EFL_WL_DEBUG"))
+     {
+        dbg = eina_strdup(getenv("WAYLAND_DEBUG"));
+        setenv("WAYLAND_DEBUG", "1", 1);
+     }
    c->disp = ecore_wl2_display_create(NULL);
+   if (getenv("EFL_WL_DEBUG"))
+     {
+        if (dbg) setenv("WAYLAND_DEBUG", dbg, 1);
+        else unsetenv("WAYLAND_DEBUG");
+        free(dbg);
+     }
    c->env = eina_strdup(getenv("WAYLAND_DISPLAY"));
    if (env) setenv("WAYLAND_DISPLAY", env, 1);
    else unsetenv("WAYLAND_DISPLAY");