| Index: chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
|
| diff --git a/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc b/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
|
| index a63cf76a1982a79255fe2361f228dedbcb62e7d7..ea21d30dfb3e0cad99f363e13e5a49f2bda5b24f 100644
|
| --- a/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
|
| +++ b/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
|
| @@ -17,6 +17,7 @@
|
| #include "chrome/browser/chromeos/policy/device_status_collector.h"
|
| #include "chrome/browser/chromeos/policy/enrollment_handler_chromeos.h"
|
| #include "chrome/browser/chromeos/policy/enterprise_install_attributes.h"
|
| +#include "chrome/browser/chromeos/policy/policy_util.h"
|
| #include "chrome/browser/chromeos/policy/server_backed_device_state.h"
|
| #include "chrome/browser/chromeos/settings/device_settings_service.h"
|
| #include "chrome/common/chrome_content_client.h"
|
| @@ -226,21 +227,21 @@ scoped_ptr<CloudPolicyClient> DeviceCloudPolicyInitializer::CreateClient(
|
| }
|
|
|
| void DeviceCloudPolicyInitializer::TryToCreateClient() {
|
| - if (device_store_->is_initialized() &&
|
| - device_store_->has_policy() &&
|
| - !device_store_->policy()->request_token().empty() &&
|
| - !state_keys_broker_->pending() &&
|
| - !enrollment_handler_) {
|
| - DeviceManagementService* service = NULL;
|
| - if (device_store_->policy()->management_mode() ==
|
| - em::PolicyData::CONSUMER_MANAGED) {
|
| - service = consumer_service_;
|
| - } else {
|
| - service = enterprise_service_;
|
| - }
|
| - if (service)
|
| - StartConnection(CreateClient(service));
|
| + if (!device_store_->is_initialized() ||
|
| + !device_store_->has_policy() ||
|
| + state_keys_broker_->pending() ||
|
| + enrollment_handler_) {
|
| + return;
|
| }
|
| +
|
| + DeviceManagementService* service = NULL;
|
| + if (PolicyUtil::IsConsumerManaged(*device_store_->policy()))
|
| + service = consumer_service_;
|
| + else if (PolicyUtil::IsEnterpriseManaged(*device_store_->policy()))
|
| + service = enterprise_service_;
|
| +
|
| + if (service)
|
| + StartConnection(CreateClient(service));
|
| }
|
|
|
| void DeviceCloudPolicyInitializer::StartConnection(
|
|
|