Index: chrome/browser/policy/profile_policy_connector_factory.cc |
diff --git a/chrome/browser/policy/profile_policy_connector_factory.cc b/chrome/browser/policy/profile_policy_connector_factory.cc |
index 52d8a1d0883aa0961485653527b0a666dfb6dd6f..7a6ad1decf21dc9eb97ad3a034e8b18b592a23d6 100644 |
--- a/chrome/browser/policy/profile_policy_connector_factory.cc |
+++ b/chrome/browser/policy/profile_policy_connector_factory.cc |
@@ -13,13 +13,14 @@ |
#include "components/user_prefs/pref_registry_syncable.h" |
#if defined(ENABLE_CONFIGURATION_POLICY) |
-#include "chrome/browser/policy/schema_registry_service_factory.h" |
#if defined(OS_CHROMEOS) |
#include "chrome/browser/chromeos/login/user.h" |
#include "chrome/browser/chromeos/login/user_manager.h" |
#include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" |
#include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.h" |
#include "chrome/browser/chromeos/profiles/profile_helper.h" |
+#include "chrome/browser/policy/schema_registry_service.h" |
+#include "chrome/browser/policy/schema_registry_service_factory.h" |
#else |
#include "chrome/browser/policy/cloud/user_cloud_policy_manager.h" |
#include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h" |
@@ -59,8 +60,8 @@ ProfilePolicyConnectorFactory::ProfilePolicyConnectorFactory() |
"ProfilePolicyConnector", |
BrowserContextDependencyManager::GetInstance()) { |
#if defined(ENABLE_CONFIGURATION_POLICY) |
- DependsOn(SchemaRegistryServiceFactory::GetInstance()); |
#if defined(OS_CHROMEOS) |
+ DependsOn(SchemaRegistryServiceFactory::GetInstance()); |
DependsOn(UserCloudPolicyManagerFactoryChromeOS::GetInstance()); |
#else |
DependsOn(UserCloudPolicyManagerFactory::GetInstance()); |
@@ -90,7 +91,10 @@ ProfilePolicyConnectorFactory::CreateForProfileInternal( |
#if defined(ENABLE_CONFIGURATION_POLICY) |
#if defined(OS_CHROMEOS) |
chromeos::User* user = NULL; |
- if (!chromeos::ProfileHelper::IsSigninProfile(profile)) { |
+ SchemaRegistry* schema_registry = NULL; |
+ if (chromeos::ProfileHelper::IsSigninProfile(profile)) { |
+ schema_registry = SchemaRegistryServiceFactory::GetForContext(profile); |
Joao da Silva
2013/11/13 09:45:58
The schema_registry is also needed for non-signin
|
+ } else { |
chromeos::UserManager* user_manager = chromeos::UserManager::Get(); |
user = user_manager->GetUserByProfile(profile); |
CHECK(user); |
@@ -104,10 +108,11 @@ ProfilePolicyConnectorFactory::CreateForProfileInternal( |
#else |
CloudPolicyManager* user_cloud_policy_manager = NULL; |
#endif |
- ProfilePolicyConnector* connector = new ProfilePolicyConnector(profile); |
+ ProfilePolicyConnector* connector = new ProfilePolicyConnector(); |
connector->Init(force_immediate_load, |
#if defined(ENABLE_CONFIGURATION_POLICY) && defined(OS_CHROMEOS) |
user, |
+ schema_registry, |
#endif |
user_cloud_policy_manager); |
connectors_[profile] = connector; |
@@ -134,12 +139,6 @@ void ProfilePolicyConnectorFactory::BrowserContextDestroyed( |
void ProfilePolicyConnectorFactory::RegisterProfilePrefs( |
user_prefs::PrefRegistrySyncable* registry) { |
-#if defined(OS_CHROMEOS) |
- registry->RegisterBooleanPref( |
- prefs::kUsedPolicyCertificatesOnce, |
- false, |
- user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
-#endif |
#if defined(OS_ANDROID) |
registry->RegisterListPref( |
prefs::kManagedBookmarks, |