Index: components/autofill/core/browser/payments/full_card_request.cc |
diff --git a/components/autofill/core/browser/payments/full_card_request.cc b/components/autofill/core/browser/payments/full_card_request.cc |
index d03e953ebb9878bfbefcf01ad9559cffabad54b2..f5a9d7d831129788e84b73f8a154c795f43de542 100644 |
--- a/components/autofill/core/browser/payments/full_card_request.cc |
+++ b/components/autofill/core/browser/payments/full_card_request.cc |
@@ -100,7 +100,6 @@ void FullCardRequest::OnUnmaskPromptClosed() { |
delegate_->OnFullCardError(); |
Reset(); |
- payments_client_->CancelRequest(); |
} |
void FullCardRequest::OnDidGetUnmaskRiskData(const std::string& risk_data) { |
@@ -137,6 +136,8 @@ void FullCardRequest::OnDidGetRealPan(AutofillClient::PaymentsRpcResult result, |
} |
void FullCardRequest::Reset() { |
+ weak_ptr_factory_.InvalidateWeakPtrs(); |
+ payments_client_->CancelRequest(); |
delegate_ = nullptr; |
request_.reset(); |
should_unmask_card_ = false; |