| Index: chrome/browser/policy/cloud/user_policy_signin_service_base.cc
|
| diff --git a/chrome/browser/policy/cloud/user_policy_signin_service_base.cc b/chrome/browser/policy/cloud/user_policy_signin_service_base.cc
|
| index 86127d67f3e1a8b0017b37d5a712e9ff89afda62..db96a7de37b6f61d8e7eaff6b348aed1d23c4e98 100644
|
| --- a/chrome/browser/policy/cloud/user_policy_signin_service_base.cc
|
| +++ b/chrome/browser/policy/cloud/user_policy_signin_service_base.cc
|
| @@ -45,6 +45,7 @@ UserPolicySigninServiceBase::UserPolicySigninServiceBase(
|
| UserPolicySigninServiceBase::~UserPolicySigninServiceBase() {}
|
|
|
| void UserPolicySigninServiceBase::FetchPolicyForSignedInUser(
|
| + const std::string& username,
|
| scoped_ptr<CloudPolicyClient> client,
|
| const PolicyFetchCallback& callback) {
|
| DCHECK(client);
|
| @@ -56,7 +57,7 @@ void UserPolicySigninServiceBase::FetchPolicyForSignedInUser(
|
| UserCloudPolicyManager* manager = GetManager();
|
| DCHECK(manager);
|
| DCHECK(!manager->core()->client());
|
| - InitializeUserCloudPolicyManager(client.Pass());
|
| + InitializeUserCloudPolicyManager(username, client.Pass());
|
| DCHECK(manager->IsClientRegistered());
|
|
|
| // Now initiate a policy fetch.
|
| @@ -159,6 +160,8 @@ scoped_ptr<CloudPolicyClient> UserPolicySigninServiceBase::PrepareToRegister(
|
| return scoped_ptr<CloudPolicyClient>();
|
| }
|
|
|
| + GetManager()->SetSigninUsername(username);
|
| +
|
| // If the DeviceManagementService is not yet initialized, start it up now.
|
| device_management_service_->ScheduleInitialization(0);
|
|
|
| @@ -201,8 +204,11 @@ void UserPolicySigninServiceBase::InitializeForSignedInUser(
|
| // OnInitializationCompleted() callback is invoked and this will
|
| // initiate a policy fetch.
|
| InitializeUserCloudPolicyManager(
|
| + username,
|
| UserCloudPolicyManager::CreateCloudPolicyClient(
|
| device_management_service_).Pass());
|
| + } else {
|
| + manager->SetSigninUsername(username);
|
| }
|
|
|
| // If the CloudPolicyService is initialized, kick off registration.
|
| @@ -213,8 +219,10 @@ void UserPolicySigninServiceBase::InitializeForSignedInUser(
|
| }
|
|
|
| void UserPolicySigninServiceBase::InitializeUserCloudPolicyManager(
|
| + const std::string& username,
|
| scoped_ptr<CloudPolicyClient> client) {
|
| UserCloudPolicyManager* manager = GetManager();
|
| + manager->SetSigninUsername(username);
|
| DCHECK(!manager->core()->client());
|
| manager->Connect(local_state_, request_context_, client.Pass());
|
| DCHECK(manager->core()->service());
|
|
|