New issue
Advanced search Search tips

Issue 728507 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug



Sign in to add a comment

Crash when .show() resolves without a selected shippingOption

Reported by filipb...@filipbech.dk, Jun 1 2017

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

Steps to reproduce the problem:
1. dont set selected:true on any shippingOption
2. Press the pay-button
3. 

What is the expected behavior?
Either it should 
- throw an error 
- Disable the pay-button until an option is selected

What went wrong?
Browser crashes!

Did this work before? N/A 

Does this work in other browsers? N/A

Chrome version: 58.0.3029.110  Channel: stable
OS Version: OS X 10.12.5
Flash Version: 

It is confusing that the pay-button is enabled when the user selects a shippingOption - even when no option has selected:true (if the developer didn't set in shippingOptionChange)
 
payment-bug.html
2.6 KB View Download
Talked to Zack about this already
Components: -Blink>Payments UI>Browser>Autofill>Payments
Labels: M-59 ReleaseBlock-Beta
Owner: anthonyvd@chromium.org
Status: Assigned (was: Unconfirmed)
Able to reproduce on Canary (M-60) using https://rsolomakhin.github.io/pr/expl/index.html. Looks like the "Pay" button is enabled even when no shipping option has been selected.

Steps to repro:
1) Open https://rsolomakhin.github.io/pr/expl/index.html
2) Click "Buy" on the page.
3) Select a shipping address.
4) Click "Pay" on the payment sheet.
5) Type in a valid CVC and click "Confirm" in the CVC unmask UI.

Observe: Crash.
Labels: -M-59 M-60
On latest Chrome Beta i.e., 59.0.3071.82 when visited the test page from comment#2(step 1) and select by it prompts that "PaymentRequest API is not supported."
This should be M-60.
Status: Fixed (was: Assigned)
Can repro, working on a fix.
Status: Started (was: Fixed)
Project Member

Comment 8 by bugdroid1@chromium.org, Jun 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a8814672c6782eeb7bbf080bbc84026fefc17c85

commit a8814672c6782eeb7bbf080bbc84026fefc17c85
Author: Anthony Vallee-Dubois <anthonyvd@chromium.org>
Date: Thu Jun 01 19:53:33 2017

[Web Payments] Fix is_ready_to_pay when no shipping option selected

Bug:  728507 
Change-Id: I15a6fdc5dca349894d1682520e7c99958b3953f3
Reviewed-on: https://chromium-review.googlesource.com/521863
Commit-Queue: Anthony Vallee-Dubois <anthonyvd@chromium.org>
Commit-Queue: Mathieu Perreault <mathp@chromium.org>
Reviewed-by: Mathieu Perreault <mathp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#476396}
[modify] https://crrev.com/a8814672c6782eeb7bbf080bbc84026fefc17c85/components/payments/content/payment_request_state.cc
[modify] https://crrev.com/a8814672c6782eeb7bbf080bbc84026fefc17c85/components/payments/content/payment_request_state_unittest.cc

Status: Fixed (was: Started)
Do we need to merge to M-60, since that's when desktop UI is enabled by default?
Labels: Merge-TBD
[Auto-generated comment by a script] We noticed that this issue is targeted for M-60; it appears the fix may have landed after branch point, meaning a merge might be required. Please confirm if a merge is required here - if so add Merge-Request-60 label, otherwise remove Merge-TBD label. Thanks.
Labels: -Merge-TBD Merge-Request-60
Yeah, considering this fixes a crash I think we should merge
Project Member

Comment 13 by sheriffbot@chromium.org, Jun 2 2017

Labels: -Merge-Request-60 Hotlist-Merge-Approved Merge-Approved-60
Your change meets the bar and is auto-approved for M60. Please go ahead and merge the CL to branch 3112 manually. Please contact milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
thanks guys... so quickly - Im impressed! 
Project Member

Comment 15 by sheriffbot@chromium.org, Jun 6 2017

This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible!

If all merges have been completed, please remove any remaining Merge-Approved labels from this issue.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 16 by bugdroid1@chromium.org, Jun 6 2017

Labels: -merge-approved-60 merge-merged-3112
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/985e5d452bd3a19d0ee55ad923613a9dd862ec6f

commit 985e5d452bd3a19d0ee55ad923613a9dd862ec6f
Author: Anthony Vallee-Dubois <anthonyvd@chromium.org>
Date: Tue Jun 06 16:07:54 2017

Merge - [Web Payments] Fix is_ready_to_pay when no shipping option selected

TBR=anthonyvd@chromium.org

(cherry picked from commit a8814672c6782eeb7bbf080bbc84026fefc17c85)

Bug:  728507 
Change-Id: I15a6fdc5dca349894d1682520e7c99958b3953f3
Reviewed-on: https://chromium-review.googlesource.com/521863
Commit-Queue: Anthony Vallee-Dubois <anthonyvd@chromium.org>
Commit-Queue: Mathieu Perreault <mathp@chromium.org>
Reviewed-by: Mathieu Perreault <mathp@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#476396}
Reviewed-on: https://chromium-review.googlesource.com/525835
Reviewed-by: Anthony Vallee-Dubois <anthonyvd@chromium.org>
Cr-Commit-Position: refs/branch-heads/3112@{#184}
Cr-Branched-From: b6460e24cf59f429d69de255538d0fc7a425ccf9-refs/heads/master@{#474897}
[modify] https://crrev.com/985e5d452bd3a19d0ee55ad923613a9dd862ec6f/components/payments/content/payment_request_state.cc
[modify] https://crrev.com/985e5d452bd3a19d0ee55ad923613a9dd862ec6f/components/payments/content/payment_request_state_unittest.cc

Cc: kkaluri@chromium.org
Labels: Needs-Feedback
Tested this issue on Mac 10.12.5 with chrome #60.0.3112.24

These are the steps followed 
1) Open https://rsolomakhin.github.io/pr/expl/index.html
2) Click "Buy" on the page.
3) Select a shipping address.
4) Click "Pay" on the payment sheet.
5) Type in a valid CVC and click "Confirm" in the CVC unmask UI.

Observations:
--------------
1. "Pay" button is not activated until all the options are selected.
2. On clicking "Pay" button, didn't observe any crash.

Attaching the screen-cast for reference.

anthonyvd@ Could you please look into it and confirm this is the expected behavior of this fix.

Thank You...


728507.mp4
1.4 MB View Download
Components: -UI>Browser>Autofill>Payments UI>Browser>Payments

Sign in to add a comment