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

Unified Diff: components/autofill/browser/autofill_ie_toolbar_import_win.cc

Issue 13488009: Remove application locale cache in autofill code. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: sync Created 7 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: components/autofill/browser/autofill_ie_toolbar_import_win.cc
===================================================================
--- components/autofill/browser/autofill_ie_toolbar_import_win.cc (revision 192613)
+++ components/autofill/browser/autofill_ie_toolbar_import_win.cc (working copy)
@@ -30,7 +30,8 @@
// Forward declaration. This function is not in unnamed namespace as it
// is referenced in the unittest.
-bool ImportCurrentUserProfiles(std::vector<AutofillProfile>* profiles,
+bool ImportCurrentUserProfiles(const std::string& app_locale,
+ std::vector<AutofillProfile>* profiles,
std::vector<CreditCard>* credit_cards);
namespace {
@@ -130,6 +131,7 @@
// Returns true if any fields were set, false otherwise.
bool ImportSingleFormGroup(const RegKey& key,
const RegToFieldMap& reg_to_field,
+ const std::string& app_locale,
FormGroup* form_group,
PhoneNumber::PhoneCombineHelper* phone) {
if (!key.Valid())
@@ -137,7 +139,6 @@
bool has_non_empty_fields = false;
- const std::string app_locale = AutofillCountry::ApplicationLocale();
for (uint32 i = 0; i < key.GetValueCount(); ++i) {
std::wstring value_name;
if (key.GetValueNameAt(i, &value_name) != ERROR_SUCCESS)
@@ -167,16 +168,16 @@
// Imports address data from the given registry |key| into the given |profile|,
// with the help of |reg_to_field|. Returns true if any fields were set, false
// otherwise.
-bool ImportSingleProfile(const RegKey& key,
+bool ImportSingleProfile(const std::string& app_locale,
+ const RegKey& key,
const RegToFieldMap& reg_to_field,
AutofillProfile* profile) {
PhoneNumber::PhoneCombineHelper phone;
bool has_non_empty_fields =
- ImportSingleFormGroup(key, reg_to_field, profile, &phone);
+ ImportSingleFormGroup(key, reg_to_field, app_locale, profile, &phone);
// Now re-construct the phones if needed.
string16 constructed_number;
- const std::string app_locale = AutofillCountry::ApplicationLocale();
if (phone.ParseNumber(*profile, app_locale, &constructed_number)) {
has_non_empty_fields = true;
profile->SetRawInfo(PHONE_HOME_WHOLE_NUMBER, constructed_number);
@@ -195,7 +196,9 @@
}
bool ImportProfiles() {
- if (!ImportCurrentUserProfiles(&profiles_, &credit_cards_)) {
+ if (!ImportCurrentUserProfiles(personal_data_manager_->app_locale(),
+ &profiles_,
+ &credit_cards_)) {
delete this;
return false;
}
@@ -232,7 +235,8 @@
// Imports Autofill profiles and credit cards from IE Toolbar if present and not
// password protected. Returns true if data is successfully retrieved. False if
// there is no data, data is password protected or error occurred.
-bool ImportCurrentUserProfiles(std::vector<AutofillProfile>* profiles,
+bool ImportCurrentUserProfiles(const std::string& app_locale,
+ std::vector<AutofillProfile>* profiles,
std::vector<CreditCard>* credit_cards) {
DCHECK(profiles);
DCHECK(credit_cards);
@@ -252,7 +256,7 @@
key_name.append(iterator_profiles.Name());
RegKey key(HKEY_CURRENT_USER, key_name.c_str(), KEY_READ);
AutofillProfile profile;
- if (ImportSingleProfile(key, reg_to_field, &profile)) {
+ if (ImportSingleProfile(app_locale, key, reg_to_field, &profile)) {
// Combine phones into whole phone #.
profiles->push_back(profile);
}
@@ -275,7 +279,8 @@
key_name.append(iterator_cc.Name());
RegKey key(HKEY_CURRENT_USER, key_name.c_str(), KEY_READ);
CreditCard credit_card;
- if (ImportSingleFormGroup(key, reg_to_field, &credit_card, NULL)) {
+ if (ImportSingleFormGroup(
+ key, reg_to_field, app_locale, &credit_card, NULL)) {
string16 cc_number = credit_card.GetRawInfo(CREDIT_CARD_NUMBER);
if (!cc_number.empty())
credit_cards->push_back(credit_card);

Powered by Google App Engine
This is Rietveld 408576698