From 8db01cbf9f6052c6c9c56ee9ce094b2e0f702c86 Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Mon, 26 Mar 2007 16:53:56 +0000 Subject: [PATCH] - setup the environment between shutdown() and init() in case the init() stuff access the env. SVN revision: 29176 --- legacy/efreet/src/bin/ef_data_dirs.c | 53 ++++++++++------------------ 1 file changed, 19 insertions(+), 34 deletions(-) diff --git a/legacy/efreet/src/bin/ef_data_dirs.c b/legacy/efreet/src/bin/ef_data_dirs.c index 173a591956..3130cc06dc 100644 --- a/legacy/efreet/src/bin/ef_data_dirs.c +++ b/legacy/efreet/src/bin/ef_data_dirs.c @@ -9,9 +9,8 @@ ef_cb_efreet_data_home(void) const char *tmp; int ret = 1; - putenv("XDG_DATA_HOME=/var/tmp"); - efreet_shutdown(); + setenv("XDG_DATA_HOME", "/var/tmp", 1); efreet_init(); tmp = efreet_data_home_get(); @@ -24,11 +23,10 @@ ef_cb_efreet_data_home(void) /* reset efreet here so we can set a new home dir */ efreet_shutdown(); + setenv("XDG_DATA_HOME", "", 1); + setenv("HOME", "/home/tmp", 1); efreet_init(); - putenv("XDG_DATA_HOME="); - putenv("HOME=/home/tmp"); - tmp = efreet_data_home_get(); if (strcmp(tmp, "/home/tmp/.local/share")) { @@ -39,11 +37,10 @@ ef_cb_efreet_data_home(void) /* reset efreet here so we can set a new home dir */ efreet_shutdown(); + setenv("XDG_DATA_HOME", "", 1); + setenv("HOME", "", 1); efreet_init(); - putenv("XDG_DATA_HOME="); - putenv("HOME="); - tmp = efreet_data_home_get(); if (strcmp(tmp, "/tmp/.local/share")) { @@ -61,9 +58,8 @@ ef_cb_efreet_config_home(void) const char *tmp; int ret = 1; - putenv("XDG_CONFIG_HOME=/var/tmp"); - efreet_shutdown(); + setenv("XDG_CONFIG_HOME", "/var/tmp", 1); efreet_init(); tmp = efreet_config_home_get(); @@ -76,11 +72,10 @@ ef_cb_efreet_config_home(void) /* reset efreet here so we can set a new home dir */ efreet_shutdown(); + setenv("XDG_CONFIG_HOME", "", 1); + setenv("HOME", "/home/tmp", 1); efreet_init(); - putenv("XDG_CONFIG_HOME="); - putenv("HOME=/home/tmp"); - tmp = efreet_config_home_get(); if (strcmp(tmp, "/home/tmp/.config")) { @@ -91,11 +86,10 @@ ef_cb_efreet_config_home(void) /* reset efreet here so we can set a new home dir */ efreet_shutdown(); + setenv("XDG_CONFIG_HOME", "", 1); + setenv("HOME", "", 1); efreet_init(); - putenv("XDG_CONFIG_HOME="); - putenv("HOME="); - tmp = efreet_config_home_get(); if (strcmp(tmp, "/tmp/.config")) { @@ -113,9 +107,8 @@ ef_cb_efreet_cache_home(void) const char *tmp; int ret = 1; - putenv("XDG_CACHE_HOME=/var/tmp"); - efreet_shutdown(); + setenv("XDG_CACHE_HOME", "/var/tmp", 1); efreet_init(); tmp = efreet_cache_home_get(); @@ -128,11 +121,10 @@ ef_cb_efreet_cache_home(void) /* reset efreet here so we can set a new home dir */ efreet_shutdown(); + setenv("XDG_CACHE_HOME", "", 1); + setenv("HOME", "/home/tmp", 1); efreet_init(); - putenv("XDG_CACHE_HOME="); - putenv("HOME=/home/tmp"); - tmp = efreet_cache_home_get(); if (strcmp(tmp, "/home/tmp/.cache")) { @@ -143,11 +135,10 @@ ef_cb_efreet_cache_home(void) /* reset efreet here so we can set a new home dir */ efreet_shutdown(); + setenv("XDG_CACHE_HOME", "", 1); + setenv("HOME", "", 1); efreet_init(); - putenv("XDG_CACHE_HOME="); - putenv("HOME="); - tmp = efreet_cache_home_get(); if (strcmp(tmp, "/tmp/.cache")) { @@ -169,16 +160,14 @@ ef_cb_efreet_data_dirs(void) char *def_vals[] = {"/usr/local/share", "/usr/share", NULL}; dirs[0] = '\0'; - strcat(dirs, "XDG_DATA_DIRS="); for (i = 0; vals[i] != NULL; i++) { if (i > 0) strcat(dirs, ":"); strcat(dirs, vals[i]); } - putenv(dirs); - efreet_shutdown(); + setenv("XDG_DATA_DIRS", dirs, 1); efreet_init(); i = 0; @@ -205,10 +194,9 @@ ef_cb_efreet_data_dirs(void) } efreet_shutdown(); + setenv("XDG_DATA_DIRS", "", 1); efreet_init(); - putenv("XDG_DATA_DIRS="); - i = 0; tmp = efreet_data_dirs_get(); ecore_list_goto_first(tmp); @@ -245,16 +233,14 @@ ef_cb_efreet_config_dirs(void) dirs[0] = '\0'; - strcat(dirs, "XDG_CONFIG_DIRS="); for (i = 0; vals[i] != NULL; i++) { if (i > 0) strcat(dirs, ":"); strcat(dirs, vals[i]); } - putenv(dirs); - efreet_shutdown(); + setenv("XDG_CONFIG_DIRS", dirs, 1); efreet_init(); i = 0; @@ -281,10 +267,9 @@ ef_cb_efreet_config_dirs(void) } efreet_shutdown(); + setenv("XDG_CONFIG_DIRS", "", 1); efreet_init(); - putenv("XDG_CONFIG_DIRS="); - i = 0; tmp = efreet_config_dirs_get(); ecore_list_goto_first(tmp);