| Index: chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
|
| index b33dcacf3bad398b61313cef0f440a05475c321c..d47999e8a9c50395bcae7233fe761b7cd50b32df 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
|
| @@ -555,8 +555,14 @@ public class CardEditor extends EditorBase<AutofillPaymentInstrument>
|
| @Override
|
| public void onResult(AutofillAddress billingAddress) {
|
| if (billingAddress == null) {
|
| - // User has cancelled the address editor.
|
| - mBillingAddressField.setValue(null);
|
| + // User cancelled out of the "add flow". Restore the selection to the
|
| + // card's billing address, if any, else clear the selection.
|
| + if (mBillingAddressField.getDropdownKeys().contains(
|
| + card.getBillingAddressId())) {
|
| + mBillingAddressField.setValue(card.getBillingAddressId());
|
| + } else {
|
| + mBillingAddressField.setValue(null);
|
| + }
|
| } else {
|
| // Set the billing address label.
|
| billingAddress.setBillingAddressLabel();
|
|
|