Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(594)

Side by Side Diff: chrome/browser/policy/profile_policy_connector_factory.cc

Issue 2739453004: Fix crash during sync load of the signin profile (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | chrome/browser/policy/schema_registry_service_factory.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/browser/policy/profile_policy_connector_factory.h" 5 #include "chrome/browser/policy/profile_policy_connector_factory.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/singleton.h" 10 #include "base/memory/singleton.h"
11 #include "build/build_config.h" 11 #include "build/build_config.h"
12 #include "chrome/browser/browser_process.h"
13 #include "chrome/browser/policy/profile_policy_connector.h" 12 #include "chrome/browser/policy/profile_policy_connector.h"
14 #include "chrome/browser/policy/schema_registry_service.h" 13 #include "chrome/browser/policy/schema_registry_service.h"
15 #include "chrome/browser/policy/schema_registry_service_factory.h" 14 #include "chrome/browser/policy/schema_registry_service_factory.h"
16 #include "chrome/browser/profiles/incognito_helpers.h" 15 #include "chrome/browser/profiles/incognito_helpers.h"
17 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
18 #include "components/keyed_service/content/browser_context_dependency_manager.h" 17 #include "components/keyed_service/content/browser_context_dependency_manager.h"
19 #include "components/policy/core/common/policy_service.h" 18 #include "components/policy/core/common/policy_service.h"
20 #include "components/policy/core/common/policy_service_impl.h" 19 #include "components/policy/core/common/policy_service_impl.h"
21 20
22 #if defined(OS_CHROMEOS) 21 #if defined(OS_CHROMEOS)
23 #include "chrome/browser/chromeos/policy/active_directory_policy_manager.h" 22 #include "chrome/browser/chromeos/policy/active_directory_policy_manager.h"
24 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h"
25 #include "chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h"
26 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" 23 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h"
27 #include "chrome/browser/chromeos/policy/user_policy_manager_factory_chromeos.h" 24 #include "chrome/browser/chromeos/policy/user_policy_manager_factory_chromeos.h"
28 #include "chrome/browser/chromeos/profiles/profile_helper.h" 25 #include "chrome/browser/chromeos/profiles/profile_helper.h"
29 #include "components/user_manager/user.h" 26 #include "components/user_manager/user.h"
30 #else // Non-ChromeOS. 27 #else // Non-ChromeOS.
31 #include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h" 28 #include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h"
32 #include "components/policy/core/common/cloud/user_cloud_policy_manager.h" 29 #include "components/policy/core/common/cloud/user_cloud_policy_manager.h"
33 #endif 30 #endif
34 31
35 namespace policy { 32 namespace policy {
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 100
104 const user_manager::User* user = nullptr; 101 const user_manager::User* user = nullptr;
105 SchemaRegistry* schema_registry = 102 SchemaRegistry* schema_registry =
106 SchemaRegistryServiceFactory::GetForContext(context)->registry(); 103 SchemaRegistryServiceFactory::GetForContext(context)->registry();
107 104
108 ConfigurationPolicyProvider* policy_provider = nullptr; 105 ConfigurationPolicyProvider* policy_provider = nullptr;
109 const CloudPolicyStore* policy_store = nullptr; 106 const CloudPolicyStore* policy_store = nullptr;
110 107
111 #if defined(OS_CHROMEOS) 108 #if defined(OS_CHROMEOS)
112 Profile* const profile = Profile::FromBrowserContext(context); 109 Profile* const profile = Profile::FromBrowserContext(context);
113 if (chromeos::ProfileHelper::IsSigninProfile(profile)) { 110 if (!chromeos::ProfileHelper::IsSigninProfile(profile)) {
114 policy::DeviceCloudPolicyManagerChromeOS* device_cloud_policy_manager =
115 g_browser_process->platform_part()
116 ->browser_policy_connector_chromeos()
117 ->GetDeviceCloudPolicyManager();
118 // TODO(tnagel): Do we need to do something for Active Directory management?
119 if (device_cloud_policy_manager) {
120 device_cloud_policy_manager->SetSigninProfileSchemaRegistry(
121 schema_registry);
122 }
123 } else {
124 user = chromeos::ProfileHelper::Get()->GetUserByProfile(profile); 111 user = chromeos::ProfileHelper::Get()->GetUserByProfile(profile);
125 CHECK(user); 112 CHECK(user);
126 } 113 }
127 114
128 CloudPolicyManager* user_cloud_policy_manager = 115 CloudPolicyManager* user_cloud_policy_manager =
129 UserPolicyManagerFactoryChromeOS::GetCloudPolicyManagerForProfile( 116 UserPolicyManagerFactoryChromeOS::GetCloudPolicyManagerForProfile(
130 profile); 117 profile);
131 ActiveDirectoryPolicyManager* active_directory_manager = 118 ActiveDirectoryPolicyManager* active_directory_manager =
132 UserPolicyManagerFactoryChromeOS:: 119 UserPolicyManagerFactoryChromeOS::
133 GetActiveDirectoryPolicyManagerForProfile(profile); 120 GetActiveDirectoryPolicyManagerForProfile(profile);
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 174
188 bool ProfilePolicyConnectorFactory::HasTestingFactory( 175 bool ProfilePolicyConnectorFactory::HasTestingFactory(
189 content::BrowserContext* context) { 176 content::BrowserContext* context) {
190 return false; 177 return false;
191 } 178 }
192 179
193 void ProfilePolicyConnectorFactory::CreateServiceNow( 180 void ProfilePolicyConnectorFactory::CreateServiceNow(
194 content::BrowserContext* context) {} 181 content::BrowserContext* context) {}
195 182
196 } // namespace policy 183 } // namespace policy
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/policy/schema_registry_service_factory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698