Closed Bug 1639577 Opened 4 years ago Closed 4 years ago

GV:OnLoadRequest with empty uri when pressing the paypal button

Categories

(GeckoView :: General, defect, P1)

ARM
Android

Tracking

(firefox80 fixed)

RESOLVED FIXED
mozilla80
Tracking Status
firefox80 --- fixed

People

(Reporter: petru, Assigned: snorp)

Details

(Whiteboard: [geckoview:m79][geckoview:m80][fenix:p1])

Attachments

(1 file)

First reported on Fenix a few months ago in https://github.com/mozilla-mobile/fenix/issues/4918 but also reproducible in geckoview-example for which I'll post some logs.

The issue seems to relate to newly opened pages which would ask users to login.
Seems to be a relatively recent regression resulting in some kind of a race since me and others have got to the expected result when debugging with breakpoints.

ESR geckoview_example working:

Latest geckoview_example not working:

Assignee: nobody → droeh
Severity: -- → S2
Priority: -- → P2
Whiteboard: [geckoview:m79]
Priority: P2 → P1
Whiteboard: [geckoview:m79] → [geckoview:m79][geckoview:m80]
Assignee: droeh → nobody
Whiteboard: [geckoview:m79][geckoview:m80] → [geckoview:m79][geckoview:m80][fenix:p1]

Possibly related to bug 1644596

This looks like it has been broken for a long time, can't make it work on 75 onward. On 72 it breaks in a different way.

Assignee: nobody → snorp

It appears that this is caused by us calling suspendTimeouts()[1] on the original page when it is backgrounded. Presumably the paypal page has to communicate with the original page via window.opener, and that's unable to occur if we suspend it. Maybe we could avoid suspending if we know it is used as window.opener elsewhere?

[1] https://searchfox.org/mozilla-central/source/mobile/android/chrome/geckoview/GeckoViewContentChild.js#291

This avoids problems where a foreground tab tries to communicate with a background
tab via window.opener, but is unable to because the background tab
is suspended.

Pushed by jwillcox@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/0073e006a287
Only suspend GeckoView tabs that are alone in their BrowsingContextGroup r=nika,geckoview-reviewers,agi
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla80
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: