Closed Bug 1591692 Opened 5 years ago Closed 5 years ago

Permafailing browser_firstPartyIsolation_aboutPages.js | Uncaught exception - OperationError: The operation failed for an operation-specific reason when Gecko 72 merges to Beta on 2019-12-02

Categories

(Core :: DOM: Security, defect, P2)

defect

Tracking

()

VERIFIED FIXED
mozilla72
Tracking Status
firefox-esr68 --- unaffected
firefox69 --- unaffected
firefox70 --- unaffected
firefox71 --- unaffected
firefox72 + verified

People

(Reporter: nataliaCs, Assigned: timhuang)

References

(Regression)

Details

(Keywords: regression, Whiteboard: [domsecurity-active])

Attachments

(1 file)

[Tracking Requested - why for this release]:
Central as Beta: https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&revision=45eb8e5ba8fb0e46eec24d535ba3bc86facbb9c1&searchStr=browser-chrome&selectedJob=273074981

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=273074981&repo=try&lineNumber=12280

[task 2019-10-26T11:59:11.188Z] 11:59:11 INFO - TEST-PASS | browser/components/originattributes/test/browser/browser_firstPartyIsolation_aboutPages.js | The principal of data: document should be a NullPrincipal. - true == true -
[task 2019-10-26T11:59:11.188Z] 11:59:11 INFO - TEST-PASS | browser/components/originattributes/test/browser/browser_firstPartyIsolation_aboutPages.js | data: URI should have firstPartyDomain set. - true == true -
[task 2019-10-26T11:59:11.189Z] 11:59:11 INFO - Console message: [JavaScript Error: "TypeError: browsingContext.currentWindowGlobal is null" {file: "resource://specialpowers/SpecialPowersParent.jsm" line: 1078}]
[task 2019-10-26T11:59:11.189Z] 11:59:11 INFO - Buffered messages finished
[task 2019-10-26T11:59:11.189Z] 11:59:11 INFO - TEST-UNEXPECTED-FAIL | browser/components/originattributes/test/browser/browser_firstPartyIsolation_aboutPages.js | Uncaught exception - OperationError: The operation failed for an operation-specific reason
[task 2019-10-26T11:59:11.189Z] 11:59:11 INFO - GECKO(1845) | --DOMWINDOW == 12 (0x11c519000) [pid = 1852] [serial = 2] [outer = 0x0] [url = about:blank]
[task 2019-10-26T11:59:11.189Z] 11:59:11 INFO - GECKO(1845) | --DOMWINDOW == 11 (0x104e37000) [pid = 1852] [serial = 4] [outer = 0x0] [url = about:blank]
[task 2019-10-26T11:59:11.189Z] 11:59:11 INFO - GECKO(1845) | --DOMWINDOW == 10 (0x1149de000) [pid = 1852] [serial = 10] [outer = 0x0] [url = about:blank]
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - GECKO(1845) | --DOMWINDOW == 9 (0x1149db800) [pid = 1852] [serial = 7] [outer = 0x0] [url = about:blank]
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - Not taking screenshot here: see the one that was previously logged
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - TEST-UNEXPECTED-FAIL | browser/components/originattributes/test/browser/browser_firstPartyIsolation_aboutPages.js | A promise chain failed to handle a rejection: [Exception... "Unexpected error" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "<unknown>" data: no] - stack: (No stack available.)
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - Rejection date: Sat Oct 26 2019 11:59:10 GMT+0000 (Greenwich Mean Time) - false == true - JS frame :: resource://testing-common/PromiseTestUtils.jsm :: assertNoUncaughtRejections :: line 265
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - Stack trace:
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - resource://testing-common/PromiseTestUtils.jsm:assertNoUncaughtRejections:265
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1098
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - Not taking screenshot here: see the one that was previously logged
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - TEST-UNEXPECTED-FAIL | browser/components/originattributes/test/browser/browser_firstPartyIsolation_aboutPages.js | A promise chain failed to handle a rejection: [Exception... "Component is not available" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "<unknown>" data: no] - stack: (No stack available.)
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - Rejection date: Sat Oct 26 2019 11:59:10 GMT+0000 (Greenwich Mean Time) - false == true - JS frame :: resource://testing-common/PromiseTestUtils.jsm :: assertNoUncaughtRejections :: line 265
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - Stack trace:
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - resource://testing-common/PromiseTestUtils.jsm:assertNoUncaughtRejections:265
[task 2019-10-26T11:59:11.190Z] 11:59:11 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1098
[task 2019-10-26T11:59:11.192Z] 11:59:11 INFO - Leaving test bound test_remote_window_open_data_uri2
[task 2019-10-26T11:59:11.192Z] 11:59:11 INFO - Entering test bound test_aboutURL

Might be related to Bug 1578465?

Flags: needinfo?(kmadan)
Summary: Permafailing browser_firstPartyIsolation_aboutPages.js | Uncaught exception - OperationError: The operation failed for an operation-specific reason when when Gecko version increases to 73 on 2019-12-02 → Permafailing browser_firstPartyIsolation_aboutPages.js | Uncaught exception - OperationError: The operation failed for an operation-specific reason when Gecko 72 merges to Beta on 2019-12-02

(In reply to Natalia Csoregi [:nataliaCs] from comment #0)

Might be related to Bug 1578465?

It's possible, more likely that it's bug 1586721.

:timhuang any chance you could take a look at these failures?

Flags: needinfo?(tihuang)
Regressed by: 1586721

I will take a look. Thanks.

Assignee: nobody → tihuang
Status: NEW → ASSIGNED
Flags: needinfo?(tihuang)

It looks like the iframe in the test page hasn't been loaded when we send the content script through the SpecialPowers.spawn() [1]. However, the BrowserTestUtils.browserLoaded(browser, true) should ensure the iframe is correctly loaded, but it isn't. It could be related to Bug 1578465, it got backout because it causes some perma failures. And I can see that it is still there in this push, which might lead to this failure.

[1] https://searchfox.org/mozilla-central/source/browser/components/originattributes/test/browser/browser_firstPartyIsolation_aboutPages.js#156

Priority: -- → P2
Whiteboard: [domsecurity-active]

(In reply to Tim Huang[:timhuang] from comment #4)

It looks like the iframe in the test page hasn't been loaded... However, the BrowserTestUtils.browserLoaded(browser, true) should ensure the iframe is correctly loaded, but it isn't.

We're calling browserLoaded without a wantLoad here, so it's possible we're resolving earlier than expected (probably for a prior load, and thus before the iframe loads).

:timhuang, does this reproduce locally for you? I can't seem to reproduce either with or without the patches from bug 1578465.

Flags: needinfo?(kmadan) → needinfo?(tihuang)

(In reply to :kashav from comment #5)

(In reply to Tim Huang[:timhuang] from comment #4)

It looks like the iframe in the test page hasn't been loaded... However, the BrowserTestUtils.browserLoaded(browser, true) should ensure the iframe is correctly loaded, but it isn't.

We're calling browserLoaded without a wantLoad here, so it's possible we're resolving earlier than expected (probably for a prior load, and thus before the iframe loads).

:timhuang, does this reproduce locally for you? I can't seem to reproduce either with or without the patches from bug 1578465.

No, this issue is not reproducible on my local MAC build, but I think you might be right about this. I should pass wantLoad to ensure the load event is for the iframe. However, the wantLoad is still broken for Fission without Bug 1578465. I will fix this issue first and disable this test for Fission until the Bug 1578465 got resolved.

Flags: needinfo?(tihuang)

The patch adds 'wantLoad' to the BrowserTestUtils.browserLoaded() to
ensure the iframe gets loaded before we proceed the test.

In addition, we need to disable this test in Fission since the
'wantLoad' feature is broken for iframes in Fission.

Pushed by tihuang@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f294a5d01809
Ensure the iframe gets loaded before we proceed the test in 'browser_firstPartyIsolation_aboutPages.js'. r=baku
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla72
Status: RESOLVED → VERIFIED
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: