1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-02 10:51:20 +03:00

sd-path: use XDG_CONFIG_HOME instead of hardcoding ~/.config for user-dirs

This commit is contained in:
Emmanuel Gil Peyrot 2016-03-15 01:00:34 +00:00
parent 70e43ee7be
commit b6b0cfaafd

View File

@ -89,7 +89,8 @@ static int from_home_dir(const char *envname, const char *suffix, char **buffer,
static int from_user_dir(const char *field, char **buffer, const char **ret) { static int from_user_dir(const char *field, char **buffer, const char **ret) {
_cleanup_fclose_ FILE *f = NULL; _cleanup_fclose_ FILE *f = NULL;
_cleanup_free_ char *b = NULL; _cleanup_free_ char *b = NULL;
const char *fn = NULL; _cleanup_free_ const char *fn = NULL;
const char *c = NULL;
char line[LINE_MAX]; char line[LINE_MAX];
size_t n; size_t n;
int r; int r;
@ -98,10 +99,14 @@ static int from_user_dir(const char *field, char **buffer, const char **ret) {
assert(buffer); assert(buffer);
assert(ret); assert(ret);
r = from_home_dir(NULL, ".config/user-dirs.dirs", &b, &fn); r = from_home_dir("XDG_CONFIG_HOME", ".config", &b, &c);
if (r < 0) if (r < 0)
return r; return r;
fn = strappend(c, "/user-dirs.dirs");
if (!fn)
return -ENOMEM;
f = fopen(fn, "re"); f = fopen(fn, "re");
if (!f) { if (!f) {
if (errno == ENOENT) if (errno == ENOENT)