| Index: components/autofill/core/browser/phone_number.cc
|
| diff --git a/components/autofill/core/browser/phone_number.cc b/components/autofill/core/browser/phone_number.cc
|
| index 66971ae05f5892286d11496557ca233f549cc025..6783677e3e77644882418e3098d1b94727ed3b56 100644
|
| --- a/components/autofill/core/browser/phone_number.cc
|
| +++ b/components/autofill/core/browser/phone_number.cc
|
| @@ -134,9 +134,16 @@ bool PhoneNumber::SetInfo(const AutofillType& type,
|
| if (number_.empty())
|
| return true;
|
|
|
| - // Store a formatted (i.e., pretty printed) version of the number.
|
| + // Store a formatted (i.e., pretty printed) version of the number if either
|
| + // the number doesn't contain formatting marks.
|
| UpdateCacheIfNeeded(app_locale);
|
| - number_ = cached_parsed_phone_.GetFormattedNumber();
|
| + if (base::ContainsOnlyChars(number_, base::ASCIIToUTF16("+0123456789"))) {
|
| + number_ = cached_parsed_phone_.GetFormattedNumber();
|
| + } else if (i18n::NormalizePhoneNumber(
|
| + number_, GetRegion(*profile_, app_locale)).empty()) {
|
| + // The number doesn't make sense for this region; clear it.
|
| + number_.clear();
|
| + }
|
| return !number_.empty();
|
| }
|
|
|
|
|