diff --git a/src/common/dir.c b/src/common/dir.c index 41c230b2..09b8106b 100644 --- a/src/common/dir.c +++ b/src/common/dir.c @@ -144,7 +144,11 @@ config_dir_n(int n) .len = sizeof(buf), .dirs = config_dirs }; - return find_dir(&ctx, n); + if (n == 0) { + return find_dir(&ctx, getenv("XDG_CONFIG_HOME") ? 0 : 1); + } else { + return find_dir(&ctx, getenv("XDG_CONFIG_DIRS") ? 2 : 3); + } } char * diff --git a/src/config/rcxml.c b/src/config/rcxml.c index 84e32264..f89a8b30 100644 --- a/src/config/rcxml.c +++ b/src/config/rcxml.c @@ -1474,7 +1474,7 @@ rcxml_read(const char *filename) * the first time. The specified 'filename' is only respected the first * time. */ - for (int i = 3; i >= 0; i--) { + for (int i = 1; i >= 0; i--) { line = NULL; len = 0; if (filename) {