From 2006c0053c57a3c262b4bd1da827fcf139ac02c8 Mon Sep 17 00:00:00 2001 From: Michael Jeanson Date: Fri, 13 Jan 2017 11:42:31 -0500 Subject: [PATCH] Port: Use glib g_get_home_dir to get home dir on mingw MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Michael Jeanson Signed-off-by: Jérémie Galarneau --- common/common.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/common/common.c b/common/common.c index b92fc89d..975bf6ae 100644 --- a/common/common.c +++ b/common/common.c @@ -25,7 +25,6 @@ #include #include #include -#include #include #include #include @@ -35,6 +34,10 @@ #include #include +#ifndef __MINGW32__ +#include +#endif + #define SYSTEM_PLUGIN_PATH INSTALL_LIBDIR "/babeltrace/plugins" #define HOME_ENV_VAR "HOME" #define HOME_PLUGIN_SUBPATH "/.local/lib/babeltrace/plugins" @@ -95,7 +98,8 @@ bool bt_common_is_setuid_setgid(void) return (geteuid() != getuid() || getegid() != getgid()); } -static char *bt_secure_getenv(const char *name) +static +char *bt_secure_getenv(const char *name) { if (bt_common_is_setuid_setgid()) { printf_error("Disregarding %s environment variable for setuid/setgid binary", @@ -105,7 +109,15 @@ static char *bt_secure_getenv(const char *name) return getenv(name); } -static const char *get_home_dir(void) +#ifdef __MINGW32__ +static +const char *bt_get_home_dir(void) +{ + return g_get_home_dir(); +} +#else /* __MINGW32__ */ +static +const char *bt_get_home_dir(void) { char *val = NULL; struct passwd *pwd; @@ -123,6 +135,7 @@ static const char *get_home_dir(void) end: return val; } +#endif /* __MINGW32__ */ BT_HIDDEN char *bt_common_get_home_plugin_path(void) @@ -130,7 +143,7 @@ char *bt_common_get_home_plugin_path(void) char *path = NULL; const char *home_dir; - home_dir = get_home_dir(); + home_dir = bt_get_home_dir(); if (!home_dir) { goto end; } -- 2.34.1