diff options
-rw-r--r-- | base/path_service.cc | 25 | ||||
-rw-r--r-- | base/path_service.h | 9 | ||||
-rw-r--r-- | chrome/app/chrome_main_delegate.cc | 8 | ||||
-rw-r--r-- | chrome/chrome.gyp | 4 | ||||
-rw-r--r-- | chrome/common/chrome_paths.cc | 4 | ||||
-rw-r--r-- | chrome/common/chrome_paths_internal.h | 5 | ||||
-rw-r--r-- | chrome/common/chrome_paths_linux.cc | 7 | ||||
-rw-r--r-- | chrome/common/chrome_paths_mac.mm | 8 | ||||
-rw-r--r-- | chrome/common/chrome_paths_win.cc | 13 | ||||
-rw-r--r-- | chrome/common_constants.gypi | 1 |
10 files changed, 11 insertions, 73 deletions
diff --git a/base/path_service.cc b/base/path_service.cc index a3b882c..46f394c 100644 --- a/base/path_service.cc +++ b/base/path_service.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -222,29 +222,18 @@ bool PathService::Get(int key, FilePath* result) { } bool PathService::Override(int key, const FilePath& path) { - // Just call the full function with true for the value of |create|. - return OverrideAndCreateIfNeeded(key, path, true); -} - -bool PathService::OverrideAndCreateIfNeeded(int key, - const FilePath& path, - bool create) { PathData* path_data = GetPathData(); DCHECK(path_data); DCHECK_GT(key, base::DIR_CURRENT) << "invalid path key"; FilePath file_path = path; - // For some locations this will fail if called from inside the sandbox there- - // fore we protect this call with a flag. - if (create) { - // Make sure the directory exists. We need to do this before we translate - // this to the absolute path because on POSIX, AbsolutePath fails if called - // on a non-existent path. - if (!file_util::PathExists(file_path) && - !file_util::CreateDirectory(file_path)) - return false; - } + // Make sure the directory exists. We need to do this before we translate + // this to the absolute path because on POSIX, AbsolutePath fails if called + // on a non-existent path. + if (!file_util::PathExists(file_path) && + !file_util::CreateDirectory(file_path)) + return false; // We need to have an absolute path, as extensions and plugins don't like // relative paths, and will gladly crash the browser in CHECK()s if they get a diff --git a/base/path_service.h b/base/path_service.h index 03e4b44..4b29738 100644 --- a/base/path_service.h +++ b/base/path_service.h @@ -1,4 +1,4 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -40,13 +40,6 @@ class BASE_EXPORT PathService { // over the lifetime of the app, so this method should be used with caution. static bool Override(int key, const FilePath& path); - // This function does the same as PathService::Override but it takes an extra - // parameter |create| which guides whether the directory to be overriden must - // be created in case it doesn't exist already. - static bool OverrideAndCreateIfNeeded(int key, - const FilePath& path, - bool create); - // To extend the set of supported keys, you can register a path provider, // which is just a function mirroring PathService::Get. The ProviderFunc // returns false if it cannot provide a non-empty path for the given key. diff --git a/chrome/app/chrome_main_delegate.cc b/chrome/app/chrome_main_delegate.cc index 063c156..f1d4fde 100644 --- a/chrome/app/chrome_main_delegate.cc +++ b/chrome/app/chrome_main_delegate.cc @@ -567,12 +567,8 @@ void ChromeMainDelegate::PreSandboxStartup() { #if defined(OS_MACOSX) || defined(OS_WIN) CheckUserDataDirPolicy(&user_data_dir); #endif - if (!user_data_dir.empty()) { - CHECK(PathService::OverrideAndCreateIfNeeded( - chrome::DIR_USER_DATA, - user_data_dir, - chrome::ProcessNeedsProfileDir(process_type))); - } + if (!user_data_dir.empty()) + CHECK(PathService::Override(chrome::DIR_USER_DATA, user_data_dir)); startup_timer_.reset(new base::StatsScope<base::StatsCounterTimer> (content::Counters::chrome_main())); diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp index c7825bd..6fbf61e 100644 --- a/chrome/chrome.gyp +++ b/chrome/chrome.gyp @@ -1055,10 +1055,6 @@ 'tools/crash_service/crash_service.cc', 'tools/crash_service/crash_service.h', 'tools/crash_service/main.cc', - '../content/public/common/content_switches.cc', - ], - 'defines': [ - 'COMPILE_CONTENT_STATICALLY', ], 'msvs_settings': { 'VCLinkerTool': { diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc index 03aca08..37d1d92 100644 --- a/chrome/common/chrome_paths.cc +++ b/chrome/common/chrome_paths.cc @@ -15,7 +15,6 @@ #include "chrome/common/chrome_constants.h" #include "chrome/common/chrome_paths_internal.h" #include "chrome/common/chrome_switches.h" -#include "content/public/common/content_switches.h" #if defined(OS_MACOSX) #include "base/mac/mac_util.h" @@ -145,9 +144,6 @@ bool PathProvider(int key, FilePath* result) { FilePath cur; switch (key) { case chrome::DIR_USER_DATA: - CHECK(ProcessNeedsProfileDir( - CommandLine::ForCurrentProcess()->GetSwitchValueASCII( - switches::kProcessType))); if (!GetDefaultUserDataDirectory(&cur)) { NOTREACHED(); return false; diff --git a/chrome/common/chrome_paths_internal.h b/chrome/common/chrome_paths_internal.h index 0e60ce1..d4a1151 100644 --- a/chrome/common/chrome_paths_internal.h +++ b/chrome/common/chrome_paths_internal.h @@ -6,8 +6,6 @@ #define CHROME_COMMON_CHROME_PATHS_INTERNAL_H_ #pragma once -#include <string> - #include "build/build_config.h" #if defined(OS_MACOSX) @@ -87,9 +85,6 @@ NSBundle* OuterAppBundle(); #endif // OS_MACOSX -// Checks if the |process_type| has the rights to access the profile. -bool ProcessNeedsProfileDir(const std::string& process_type); - } // namespace chrome #endif // CHROME_COMMON_CHROME_PATHS_INTERNAL_H_ diff --git a/chrome/common/chrome_paths_linux.cc b/chrome/common/chrome_paths_linux.cc index b8987cf..acfebc1 100644 --- a/chrome/common/chrome_paths_linux.cc +++ b/chrome/common/chrome_paths_linux.cc @@ -103,11 +103,4 @@ bool GetUserDesktop(FilePath* result) { return true; } -bool ProcessNeedsProfileDir(const std::string& process_type) { - // For now we have no reason to forbid this on Linux as we don't - // have the roaming profile troubles there. Moreover the Linux breakpad needs - // profile dir access in all process if enabled on Linux. - return true; -} - } // namespace chrome diff --git a/chrome/common/chrome_paths_mac.mm b/chrome/common/chrome_paths_mac.mm index 284b3dd..f3783e0 100644 --- a/chrome/common/chrome_paths_mac.mm +++ b/chrome/common/chrome_paths_mac.mm @@ -1,4 +1,4 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -199,10 +199,4 @@ NSBundle* OuterAppBundle() { return bundle; } -bool ProcessNeedsProfileDir(const std::string& process_type) { - // For now we have no reason to forbid this on other MacOS as we don't - // have the roaming profile troubles there. - return true; -} - } // namespace chrome diff --git a/chrome/common/chrome_paths_win.cc b/chrome/common/chrome_paths_win.cc index 1a2f02ae..5eefb78 100644 --- a/chrome/common/chrome_paths_win.cc +++ b/chrome/common/chrome_paths_win.cc @@ -16,7 +16,6 @@ #include "base/win/scoped_co_mem.h" #include "chrome/common/chrome_constants.h" #include "chrome/installer/util/browser_distribution.h" -#include "content/public/common/content_switches.h" namespace chrome { @@ -98,16 +97,4 @@ bool GetUserDesktop(FilePath* result) { return true; } -bool ProcessNeedsProfileDir(const std::string& process_type) { - // On windows we don't want subprocesses other than the browser process and - // service processes to be able to use the profile directory because if it - // lies on a network share the sandbox will prevent us from accessing it. - // TODO(pastarmovj): For no gpu processes are whitelisted too because they do - // use the profile dir in some way but this must be investigated and fixed if - // possible. - return process_type.empty() || - process_type == switches::kServiceProcess || - process_type == switches::kGpuProcess; -} - } // namespace chrome diff --git a/chrome/common_constants.gypi b/chrome/common_constants.gypi index 4762e1e..48ff259a 100644 --- a/chrome/common_constants.gypi +++ b/chrome/common_constants.gypi @@ -86,7 +86,6 @@ ], 'defines': [ '<@(nacl_win64_defines)', - 'COMPILE_CONTENT_STATICALLY', ], 'configurations': { 'Common_Base': { |