aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/bindings/codegen/CodegenRust.py
diff options
context:
space:
mode:
authoryvt <i@yvt.jp>2021-07-13 20:53:53 +0900
committeryvt <i@yvt.jp>2021-07-13 21:06:52 +0900
commitc3de9b72a62268bb2c2cc60a83bb593d70e1d04f (patch)
tree1871ef23225a4622d6411c014dc87415608225e5 /components/script/dom/bindings/codegen/CodegenRust.py
parent3550270cd0047c6585004cb842fa8e6d1d9b0abc (diff)
downloadservo-c3de9b72a62268bb2c2cc60a83bb593d70e1d04f.tar.gz
servo-c3de9b72a62268bb2c2cc60a83bb593d70e1d04f.zip
feat(script): use `GlobalScope::origin` when creating a principals object
The concrete types of `[Global]` DOM interfaces have `origin` methods, which were used before this commit. Some of them just delegate to `GlobalScope::origin` while others are implemented differently. This commit changes the created principals objects' associated origins in the following way: - `DedicatedWorkerGlobalScope` - was `WorkerGlobalScope::worker_url` - `DissimilarOriginWindow` - no change - `PaintWorkletGlobalScope` - no change - `ServiceWorkerGlobalScope` - was `ServiceWorkerGlobalScope::scope_url` - `TestWorkletGlobalScope` - no change - `Window` - no change
Diffstat (limited to 'components/script/dom/bindings/codegen/CodegenRust.py')
-rw-r--r--components/script/dom/bindings/codegen/CodegenRust.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py
index 001abc9ebce..4de72f74db4 100644
--- a/components/script/dom/bindings/codegen/CodegenRust.py
+++ b/components/script/dom/bindings/codegen/CodegenRust.py
@@ -2912,7 +2912,7 @@ class CGWrapGlobalMethod(CGAbstractMethod):
return CGGeneric("""\
let raw = Root::new(MaybeUnreflectedDom::from_box(object));
-let origin = (*raw.as_ptr()).origin(); // `MutableOrigin` or `&MutableOrigin`
+let origin = (*raw.as_ptr()).upcast::<GlobalScope>().origin();
rooted!(in(*cx) let mut obj = ptr::null_mut::<JSObject>());
create_global_object(
@@ -2921,7 +2921,7 @@ create_global_object(
raw.as_ptr() as *const %(concreteType)s as *const libc::c_void,
_trace,
obj.handle_mut(),
- &origin);
+ origin);
assert!(!obj.is_null());
let root = raw.reflect_with(obj.get());