| Index: components/autofill/core/browser/webdata/autofill_profile_syncable_service.cc
|
| diff --git a/components/autofill/core/browser/webdata/autofill_profile_syncable_service.cc b/components/autofill/core/browser/webdata/autofill_profile_syncable_service.cc
|
| index b438e6532fc8260f7e0d8e67c6ba7e127deb51ae..ded701cea3680852061af8ddd8aaee02231ec88f 100644
|
| --- a/components/autofill/core/browser/webdata/autofill_profile_syncable_service.cc
|
| +++ b/components/autofill/core/browser/webdata/autofill_profile_syncable_service.cc
|
| @@ -453,19 +453,17 @@ void AutofillProfileSyncableService::WriteAutofillProfile(
|
| UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_DEPENDENT_LOCALITY))));
|
| specifics->set_address_home_language_code(LimitData(profile.language_code()));
|
|
|
| + // TODO(estade): this should be set_email_address.
|
| + specifics->add_email_address(
|
| + LimitData(UTF16ToUTF8(profile.GetRawInfo(EMAIL_ADDRESS))));
|
| std::vector<base::string16> values;
|
| - profile.GetRawMultiInfo(EMAIL_ADDRESS, &values);
|
| - for (size_t i = 0; i < values.size(); ++i) {
|
| - specifics->add_email_address(LimitData(UTF16ToUTF8(values[i])));
|
| - }
|
|
|
| specifics->set_company_name(
|
| LimitData(UTF16ToUTF8(profile.GetRawInfo(COMPANY_NAME))));
|
|
|
| - profile.GetRawMultiInfo(PHONE_HOME_WHOLE_NUMBER, &values);
|
| - for (size_t i = 0; i < values.size(); ++i) {
|
| - specifics->add_phone_home_whole_number(LimitData(UTF16ToUTF8(values[i])));
|
| - }
|
| + // TODO(estade): this should be set_phone_home_whole_number.
|
| + specifics->add_phone_home_whole_number(
|
| + LimitData(UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER))));
|
| }
|
|
|
| void AutofillProfileSyncableService::CreateGUIDToProfileMap(
|
| @@ -619,29 +617,14 @@ bool AutofillProfileSyncableService::UpdateField(
|
| return true;
|
| }
|
|
|
| +// TODO(estade): remove this function.
|
| bool AutofillProfileSyncableService::UpdateMultivaluedField(
|
| ServerFieldType field_type,
|
| const ::google::protobuf::RepeatedPtrField<std::string>& new_values,
|
| AutofillProfile* autofill_profile) {
|
| - std::vector<base::string16> values;
|
| - autofill_profile->GetRawMultiInfo(field_type, &values);
|
| - bool changed = false;
|
| - if (static_cast<size_t>(new_values.size()) != values.size()) {
|
| - values.clear();
|
| - values.resize(static_cast<size_t>(new_values.size()));
|
| - changed = true;
|
| - }
|
| - for (size_t i = 0; i < values.size(); ++i) {
|
| - base::string16 synced_value(
|
| - UTF8ToUTF16(new_values.Get(static_cast<int>(i))));
|
| - if (values[i] != synced_value) {
|
| - values[i] = synced_value;
|
| - changed = true;
|
| - }
|
| - }
|
| - if (changed)
|
| - autofill_profile->SetRawMultiInfo(field_type, values);
|
| - return changed;
|
| + return UpdateField(field_type,
|
| + new_values.size() < 1 ? std::string() : new_values.Get(0),
|
| + autofill_profile);
|
| }
|
|
|
| bool AutofillProfileSyncableService::MergeProfile(
|
|
|