Index: chrome/browser/profile.cc |
=================================================================== |
--- chrome/browser/profile.cc (revision 33536) |
+++ chrome/browser/profile.cc (working copy) |
@@ -608,10 +608,23 @@ |
base_cache_path_ = user_cache_path; |
} |
} |
+#elif defined(OS_POSIX) // Posix minus Mac. |
+ // See http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html |
+ // for a spec on where cache files go. The net effect for most systems is we |
+ // use ~/.cache/chromium/ for Chromium and ~/.cache/google-chrome/ for |
+ // official builds. |
+ if (!PathService::IsOverridden(chrome::DIR_USER_DATA)) { |
+#if defined(GOOGLE_CHROME_BUILD) |
+ const char kCacheDir[] = "google-chrome"; |
#else |
- if (!PathService::IsOverridden(chrome::DIR_USER_DATA)) |
- PathService::Get(chrome::DIR_USER_CACHE, &base_cache_path_); |
+ const char kCacheDir[] = "chromium"; |
#endif |
+ PathService::Get(base::DIR_USER_CACHE, &base_cache_path_); |
+ base_cache_path_ = base_cache_path_.Append(kCacheDir); |
+ if (!file_util::PathExists(base_cache_path_)) |
+ file_util::CreateDirectory(base_cache_path_); |
+ } |
+#endif |
if (base_cache_path_.empty()) |
base_cache_path_ = path_; |