diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-03 20:52:26 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-03 20:52:26 +0000 |
commit | d1ab0b7943301af63c2cac7eb45963d3bbe92e6b (patch) | |
tree | 761d8d6527c350e3cb52b56a0ce6137f6c10abbc /components | |
parent | 96391be250de839dc86474253853f7edeabf4846 (diff) | |
download | chromium_src-d1ab0b7943301af63c2cac7eb45963d3bbe92e6b.zip chromium_src-d1ab0b7943301af63c2cac7eb45963d3bbe92e6b.tar.gz chromium_src-d1ab0b7943301af63c2cac7eb45963d3bbe92e6b.tar.bz2 |
rAc: fix some validation issues
1) hide bubble after fixing a missing month or year
2) CVC validity should be based on card type best guess
3) cross-field validation shouldn't override single-field validation, but fields that are validly individually shouldn't skip cross-field validation just because their partner field is invalid (necessary for \#2)
BUG=336998
Review URL: https://codereview.chromium.org/141843005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248571 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components')
-rw-r--r-- | components/autofill/core/browser/validation.cc | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/components/autofill/core/browser/validation.cc b/components/autofill/core/browser/validation.cc index dc5ddd3..177785d 100644 --- a/components/autofill/core/browser/validation.cc +++ b/components/autofill/core/browser/validation.cc @@ -128,10 +128,9 @@ bool IsValidCreditCardSecurityCode(const base::string16& text) { bool IsValidCreditCardSecurityCode(const base::string16& code, const base::string16& number) { - CreditCard card; - card.SetRawInfo(CREDIT_CARD_NUMBER, number); + std::string type = CreditCard::GetCreditCardType(number); size_t required_length = 3; - if (card.type() == kAmericanExpressCard) + if (type == kAmericanExpressCard) required_length = 4; return code.length() == required_length; |