Index: base/nix/xdg_util.cc |
diff --git a/base/nix/xdg_util.cc b/base/nix/xdg_util.cc |
index 4c1510f5c116acf0e0276b87c3217cbb5c59370a..4086a3d0af18ae41248c714a3dd7892654142a3a 100644 |
--- a/base/nix/xdg_util.cc |
+++ b/base/nix/xdg_util.cc |
@@ -6,9 +6,11 @@ |
#include <string> |
+#include "base/base_paths.h" |
#include "base/environment.h" |
#include "base/file_util.h" |
#include "base/files/file_path.h" |
+#include "base/path_service.h" |
#include "base/third_party/xdg_user_dirs/xdg_user_dir_lookup.h" |
namespace { |
@@ -28,10 +30,12 @@ FilePath GetXDGDirectory(Environment* env, const char* env_name, |
const char* fallback_dir) { |
FilePath path; |
std::string env_value; |
- if (env->GetVar(env_name, &env_value) && !env_value.empty()) |
+ if (env->GetVar(env_name, &env_value) && !env_value.empty()) { |
path = FilePath(env_value); |
- else |
- path = GetHomeDir().Append(fallback_dir); |
+ } else { |
+ PathService::Get(base::DIR_HOME, &path); |
+ path = path.Append(fallback_dir); |
+ } |
return path.StripTrailingSeparators(); |
} |
@@ -42,7 +46,8 @@ FilePath GetXDGUserDirectory(const char* dir_name, const char* fallback_dir) { |
path = FilePath(xdg_dir); |
free(xdg_dir); |
} else { |
- path = GetHomeDir().Append(fallback_dir); |
+ PathService::Get(base::DIR_HOME, &path); |
+ path = path.Append(fallback_dir); |
} |
return path.StripTrailingSeparators(); |
} |