| Index: chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
|
| index 4e55ca2236ca7355cf2699a18eb05d050e86b6ae..53a8a0cee4e7e21abd014c53de0c1bd57c823757 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
|
| @@ -114,6 +114,7 @@ public class PaymentRequestImpl implements PaymentRequest, PaymentRequestUI.Clie
|
| private Callback<PaymentInformation> mPaymentInformationCallback;
|
| private Pattern mRegionCodePattern;
|
| private boolean mMerchantNeedsShippingAddress;
|
| + private boolean mPaymentAppRunning;
|
|
|
| /**
|
| * Builds the dialog.
|
| @@ -556,6 +557,7 @@ public class PaymentRequestImpl implements PaymentRequest, PaymentRequestUI.Clie
|
| PaymentOption selectedShippingOption, PaymentOption selectedPaymentMethod) {
|
| assert selectedPaymentMethod instanceof PaymentInstrument;
|
| PaymentInstrument instrument = (PaymentInstrument) selectedPaymentMethod;
|
| + mPaymentAppRunning = true;
|
| instrument.getDetails(mMerchantName, mOrigin, mRawTotal, mRawLineItems,
|
| mData.optJSONObject(instrument.getMethodName()), this);
|
| }
|
| @@ -576,8 +578,11 @@ public class PaymentRequestImpl implements PaymentRequest, PaymentRequestUI.Clie
|
| */
|
| @Override
|
| public void abort() {
|
| - closeClient();
|
| - closeUI(false);
|
| + mClient.onAbort(!mPaymentAppRunning);
|
| + if (!mPaymentAppRunning) {
|
| + closeClient();
|
| + closeUI(false);
|
| + }
|
| }
|
|
|
| /**
|
|
|