Chromium Code Reviews| Index: components/autofill/core/browser/personal_data_manager.cc |
| diff --git a/components/autofill/core/browser/personal_data_manager.cc b/components/autofill/core/browser/personal_data_manager.cc |
| index b7a0a46e0cfea0ac59b7cce98dd670f788ead666..387f92aebf9226b1bfe80bec68894bd07c1562cf 100644 |
| --- a/components/autofill/core/browser/personal_data_manager.cc |
| +++ b/components/autofill/core/browser/personal_data_manager.cc |
| @@ -30,6 +30,7 @@ |
| #include "components/autofill/core/browser/validation.h" |
| #include "components/autofill/core/common/autofill_pref_names.h" |
| #include "components/autofill/core/common/autofill_switches.h" |
| +#include "components/signin/core/browser/account_tracker_service.h" |
| #include "components/signin/core/common/signin_pref_names.h" |
| #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_data.h" |
| #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_formatter.h" |
| @@ -241,13 +242,16 @@ PersonalDataManager::PersonalDataManager(const std::string& app_locale) |
| pending_server_creditcards_query_(0), |
| app_locale_(app_locale), |
| pref_service_(NULL), |
| + account_tracker_(NULL), |
| is_off_the_record_(false), |
| has_logged_profile_count_(false) {} |
| void PersonalDataManager::Init(scoped_refptr<AutofillWebDataService> database, |
| PrefService* pref_service, |
| + AccountTrackerService* account_tracker, |
| bool is_off_the_record) { |
| database_ = database; |
| + account_tracker_ = account_tracker; |
| SetPrefService(pref_service); |
|
Evan Stade
2015/04/10 13:56:15
nit: keep init in order of parameters?
Roger Tawa OOO till Jul 10th
2015/04/10 14:35:33
Done.
|
| is_off_the_record_ = is_off_the_record; |
| @@ -306,8 +310,11 @@ void PersonalDataManager::OnWebDataServiceRequestDone( |
| &server_profiles_); |
| if (!server_profiles_.empty()) { |
| - base::string16 email = base::UTF8ToUTF16( |
| - pref_service_->GetString(::prefs::kGoogleServicesUsername)); |
| + std::string account_id = |
| + pref_service_->GetString(::prefs::kGoogleServicesAccountId); |
| + base::string16 email = |
| + base::UTF8ToUTF16( |
| + account_tracker_->GetAccountInfo(account_id).email); |
| DCHECK(!email.empty()); |
| for (AutofillProfile* profile : server_profiles_) |
| profile->SetRawInfo(EMAIL_ADDRESS, email); |