Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/common/chrome_paths.h" | 5 #include "chrome/common/chrome_paths.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/mac/bundle_locations.h" | 10 #include "base/mac/bundle_locations.h" |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 64 | 64 |
| 65 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 65 #if defined(OS_POSIX) && !defined(OS_MACOSX) |
| 66 | 66 |
| 67 const FilePath::CharType kO3DPluginFileName[] = | 67 const FilePath::CharType kO3DPluginFileName[] = |
| 68 FILE_PATH_LITERAL("pepper/libppo3dautoplugin.so"); | 68 FILE_PATH_LITERAL("pepper/libppo3dautoplugin.so"); |
| 69 | 69 |
| 70 const FilePath::CharType kGTalkPluginFileName[] = | 70 const FilePath::CharType kGTalkPluginFileName[] = |
| 71 FILE_PATH_LITERAL("pepper/libppgoogletalk.so"); | 71 FILE_PATH_LITERAL("pepper/libppgoogletalk.so"); |
| 72 | 72 |
| 73 #endif // defined(OS_POSIX) && !defined(OS_MACOSX) | 73 #endif // defined(OS_POSIX) && !defined(OS_MACOSX) |
| 74 | |
| 75 #if defined(OS_WIN) | |
| 76 // TODO(pastarmovj): Remove this copy of switches::kProcessType once we get | |
| 77 // better way to share constants between content and chrome. Using content | |
| 78 // switches makes all hell break loose on us when linking. | |
|
jam
2012/05/02 17:29:52
I don't understand this comment. Many switches in
pastarmovj
2012/05/03 16:48:24
After our offline discussion I came up with new ve
| |
| 79 const char kProcessTypeSwitch[] = "type"; | |
|
cpu_(ooo_6.6-7.5)
2012/05/02 17:33:48
asking john (jam) what is the way to go here.
| |
| 80 #endif // defined(OS_WIN) | |
| 74 } // namespace | 81 } // namespace |
| 75 | 82 |
| 76 namespace chrome { | 83 namespace chrome { |
| 77 | 84 |
| 78 // Gets the path for internal plugins. | 85 // Gets the path for internal plugins. |
| 79 bool GetInternalPluginsDirectory(FilePath* result) { | 86 bool GetInternalPluginsDirectory(FilePath* result) { |
| 80 #if defined(OS_MACOSX) | 87 #if defined(OS_MACOSX) |
| 81 // If called from Chrome, get internal plugins from a subdirectory of the | 88 // If called from Chrome, get internal plugins from a subdirectory of the |
| 82 // framework. | 89 // framework. |
| 83 if (base::mac::AmIBundled()) { | 90 if (base::mac::AmIBundled()) { |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 125 return PathService::Get(base::FILE_MODULE, result); | 132 return PathService::Get(base::FILE_MODULE, result); |
| 126 } | 133 } |
| 127 | 134 |
| 128 // Assume that we will not need to create the directory if it does not exist. | 135 // Assume that we will not need to create the directory if it does not exist. |
| 129 // This flag can be set to true for the cases where we want to create it. | 136 // This flag can be set to true for the cases where we want to create it. |
| 130 bool create_dir = false; | 137 bool create_dir = false; |
| 131 | 138 |
| 132 FilePath cur; | 139 FilePath cur; |
| 133 switch (key) { | 140 switch (key) { |
| 134 case chrome::DIR_USER_DATA: | 141 case chrome::DIR_USER_DATA: |
| 142 CHECK(ProcessNeedsProfileDir( | |
| 143 CommandLine::ForCurrentProcess()->GetSwitchValueASCII( | |
| 144 kProcessTypeSwitch))); | |
|
cpu_(ooo_6.6-7.5)
2012/05/02 17:33:48
thanks! no sandboxed process should me trafficking
pastarmovj
2012/05/03 16:48:24
I am glad to be useful :)
| |
| 135 if (!GetDefaultUserDataDirectory(&cur)) { | 145 if (!GetDefaultUserDataDirectory(&cur)) { |
| 136 NOTREACHED(); | 146 NOTREACHED(); |
| 137 return false; | 147 return false; |
| 138 } | 148 } |
| 139 create_dir = true; | 149 create_dir = true; |
| 140 break; | 150 break; |
| 141 case chrome::DIR_USER_DOCUMENTS: | 151 case chrome::DIR_USER_DOCUMENTS: |
| 142 if (!GetUserDocumentsDirectory(&cur)) | 152 if (!GetUserDocumentsDirectory(&cur)) |
| 143 return false; | 153 return false; |
| 144 create_dir = true; | 154 create_dir = true; |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 402 return true; | 412 return true; |
| 403 } | 413 } |
| 404 | 414 |
| 405 // This cannot be done as a static initializer sadly since Visual Studio will | 415 // This cannot be done as a static initializer sadly since Visual Studio will |
| 406 // eliminate this object file if there is no direct entry point into it. | 416 // eliminate this object file if there is no direct entry point into it. |
| 407 void RegisterPathProvider() { | 417 void RegisterPathProvider() { |
| 408 PathService::RegisterProvider(PathProvider, PATH_START, PATH_END); | 418 PathService::RegisterProvider(PathProvider, PATH_START, PATH_END); |
| 409 } | 419 } |
| 410 | 420 |
| 411 } // namespace chrome | 421 } // namespace chrome |
| OLD | NEW |