From 4cd60a96e1a0e02657a098ec51e603f8f16cfe21 Mon Sep 17 00:00:00 2001 From: Gustavo Sverzut Barbieri Date: Tue, 9 Oct 2012 17:52:21 +0000 Subject: [PATCH] Add $XDG_RUNTIME_DIR support. SVN revision: 77666 --- legacy/efreet/ChangeLog | 4 ++++ legacy/efreet/NEWS | 5 +++++ legacy/efreet/src/lib/efreet_base.c | 10 ++++++++++ legacy/efreet/src/lib/efreet_base.h | 7 +++++++ 4 files changed, 26 insertions(+) diff --git a/legacy/efreet/ChangeLog b/legacy/efreet/ChangeLog index 2ac2f1bdb3..f0f1efd061 100644 --- a/legacy/efreet/ChangeLog +++ b/legacy/efreet/ChangeLog @@ -139,3 +139,7 @@ * Fix long lurking bug where desktop/icon cache updates get delayed by silly long amounts of time. + +2012-10-09 Gustavo Sverzut Barbieri (k-s) + + * Add $XDG_RUNTIME_DIR support diff --git a/legacy/efreet/NEWS b/legacy/efreet/NEWS index 15ddc1a6b2..2ca94afe8e 100644 --- a/legacy/efreet/NEWS +++ b/legacy/efreet/NEWS @@ -6,6 +6,11 @@ Changes since Efreet 1.7.0: Fixes: * Fix insane delay added to desktop/icon updates. +Additions: + + * Support XDG_RUNTIME_DIR + + Changes since Efreet 1.2.0: --------------------------- diff --git a/legacy/efreet/src/lib/efreet_base.c b/legacy/efreet/src/lib/efreet_base.c index afb59204d9..0f43ee5ec2 100644 --- a/legacy/efreet/src/lib/efreet_base.c +++ b/legacy/efreet/src/lib/efreet_base.c @@ -46,6 +46,7 @@ static const char *efreet_home_dir = NULL; static const char *xdg_data_home = NULL; static const char *xdg_config_home = NULL; static const char *xdg_cache_home = NULL; +static const char *xdg_runtime_dir = NULL; static Eina_List *xdg_data_dirs = NULL; static Eina_List *xdg_config_dirs = NULL; static const char *xdg_desktop_dir = NULL; @@ -87,6 +88,7 @@ efreet_base_shutdown(void) IF_RELEASE(xdg_data_home); IF_RELEASE(xdg_config_home); IF_RELEASE(xdg_cache_home); + IF_RELEASE(xdg_runtime_dir); IF_FREE_LIST(xdg_data_dirs, eina_stringshare_del); IF_FREE_LIST(xdg_config_dirs, eina_stringshare_del); @@ -179,6 +181,14 @@ efreet_cache_home_get(void) return xdg_cache_home; } +EAPI const char * +efreet_runtime_dir_get(void) +{ + if (xdg_runtime_dir) return xdg_runtime_dir; + xdg_runtime_dir = efreet_dir_get("XDG_RUNTIME_DIR", "/tmp"); + return xdg_runtime_dir; +} + EAPI const char * efreet_hostname_get(void) { diff --git a/legacy/efreet/src/lib/efreet_base.h b/legacy/efreet/src/lib/efreet_base.h index 0eb3d52297..96d85910b9 100644 --- a/legacy/efreet/src/lib/efreet_base.h +++ b/legacy/efreet/src/lib/efreet_base.h @@ -59,6 +59,13 @@ EAPI Eina_List *efreet_config_dirs_get(void); */ EAPI const char *efreet_cache_home_get(void); +/** + * @return Returns the XDG User Runtime directory. + * @brief Retrieves the XDG User Runtime directory. + * @since 1.8 + */ +EAPI const char *efreet_runtime_dir_get(void); + /** * @return Returns the current hostname * @brief Returns the current hostname or empty string if not found