From a1662717c52aa8cfc395969af3716503a576018a Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Wed, 22 Jul 2015 16:27:49 +0200 Subject: [PATCH] Elm_Config: add getpwent support, fix compilation on Windows @fix --- legacy/elementary/configure.ac | 2 +- legacy/elementary/src/lib/elm_config.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/legacy/elementary/configure.ac b/legacy/elementary/configure.ac index 603535bd96..5e515228aa 100644 --- a/legacy/elementary/configure.ac +++ b/legacy/elementary/configure.ac @@ -447,7 +447,7 @@ ELM_QUICKLAUNCH AC_FUNC_ALLOCA -AC_CHECK_FUNCS([geteuid getuid]) +AC_CHECK_FUNCS([geteuid getuid getpwent]) if test "x${want_quicklaunch}" != "xno"; then AC_CHECK_FUNCS([fork clearenv]) diff --git a/legacy/elementary/src/lib/elm_config.c b/legacy/elementary/src/lib/elm_config.c index 9e48af54e7..b389ce7c4d 100644 --- a/legacy/elementary/src/lib/elm_config.c +++ b/legacy/elementary/src/lib/elm_config.c @@ -574,19 +574,21 @@ _elm_config_user_dir_snprintf(char *dst, #if !defined(HAVE_GETUID) || !defined(HAVE_GETEUID) else { +# if HAVE_GETPWENT struct passwd *pw = getpwent(); if ((!pw) || (!pw->pw_dir)) goto end; -#ifdef DOXDG +# ifdef DOXDG user_dir_len = eina_str_join_len (dst, size, '/', pw->pw_dir, strlen(pw->pw_dir), ".config", sizeof(".config") - 1, "elementary", sizeof("elementary") - 1); -#else +# else user_dir_len = eina_str_join_len (dst, size, '/', pw->pw_dir, strlen(pw->pw_dir), ELEMENTARY_BASE_DIR, sizeof(ELEMENTARY_BASE_DIR) - 1); -#endif +# endif +# endif /* HAVE_GETPWENT */ } #endif