Fixing bug with Firefox extension content scripts (#2099)

This commit is contained in:
Pauan 2020-04-22 16:12:14 +02:00 committed by GitHub
parent 3c40492fa3
commit a93b778b5c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4747,9 +4747,11 @@ pub fn global() -> Object {
fn get_global() -> Result<Object, JsValue>;
}
let static_object = Global::get_global_this()
.or_else(|_| Global::get_self())
// The order is important: in Firefox Extension Content Scripts `globalThis`
// is a Sandbox (not Window), so `globalThis` must be checked after `window`.
let static_object = Global::get_self()
.or_else(|_| Global::get_window())
.or_else(|_| Global::get_global_this())
.or_else(|_| Global::get_global());
if let Ok(obj) = static_object {
if !obj.is_undefined() {