Closed Bug 1697774 Opened 3 years ago Closed 3 years ago

Avoid permission denied errors in web content process related to accessing cross-origin object when closing a content script context while navigating between two origins running in separate processes

Categories

(WebExtensions :: General, task, P3)

task

Tracking

(Fission Milestone:Future, firefox89 fixed)

RESOLVED FIXED
89 Branch
Fission Milestone Future
Tracking Status
firefox89 --- fixed

People

(Reporter: rpl, Assigned: zombie)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

While looking into Bug 1691575 I did notice the following errors logged in the console:

JavaScript error: resource://gre/modules/ExtensionUtils.jsm, line 114: SecurityError: Permission denied to access property "windowGlobalChild" on cross-origin object

JavaScript error: resource://gre/modules/ExtensionCommon.jsm, line 414: SecurityError: Permission denied to access property "removeEventListener" on cross-origin object

Console message: [JavaScript Error: "SecurityError: Permission denied to access property "windowGlobalChild" on cross-origin object" {file: "resource://gre/modules/ExtensionUtils.jsm" line: 114}]
getInnerWindowID@resource://gre/modules/ExtensionUtils.jsm:114:3
get@resource://gre/modules/ExtensionCommon.jsm:402:7
get@resource://gre/modules/ExtensionCommon.jsm:540:28
close@resource://gre/modules/ExtensionContent.jsm:937:9
inner-window-destroyed@resource://gre/modules/ExtensionContent.jsm:1008:19
observe@resource://gre/modules/ExtensionContent.jsm:1026:27

These errors are not related to the reasons why that test does currently fail with fission enabled, because those errors are logged while closing the content script context when the test does navigate a tab from "http://mochi.test:8888/" to "http://example.com/" and they aren't actually explicitly checked nor detected automatically by our test harness (and so I doubt that any of the other webextensions tests are currently going to fail even if there may be other tests triggering the same scenario).

Based on a quick look, those errors seems expected under fission and that particular scenario (navigating a tab with an attached content script, that particular test did attach it using tabs.executeScript, between two origins running in separate domains), and so it seems something that we should expect and handle more gracefully.

Hey Tomislav, would you mind to take a look to this? (feel free to close it as a duplicate if there was already an issue tracking it)
there is no rush, just wanted to be sure that it is under your radar.

Flags: needinfo?(tomica)
Assignee: nobody → tomica
Severity: -- → N/A
Flags: needinfo?(tomica)
Priority: -- → P3

Tomislav says this bug doesn't need to block Fission MVP.

Fission Milestone: --- → Future
Blocks: 1587848
Pushed by tjovanovic@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/ab7decc30208
Avoid accessing cross-process contentWindow after navigation r=rpl
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 89 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: