Add CanGc argument to reflect_dom_object (#34606)

* applied mach fmt

Signed-off-by: Domenico Rizzo <domenico.rizzo@gmail.com>

Refinements

Signed-off-by: Domenico Rizzo <domenico.rizzo@gmail.com>

Modified reflect_dom_object signature and all its calls

Signed-off-by: Domenico Rizzo <domenico.rizzo@gmail.com>

* fix function calls when parameter is passed up

Signed-off-by: Domenico Rizzo <domenico.rizzo@gmail.com>

---------

Signed-off-by: Domenico Rizzo <domenico.rizzo@gmail.com>
This commit is contained in:
Domenico Rizzo 2024-12-13 16:51:59 +01:00 committed by GitHub
parent 471d3572b7
commit 0e9746fbbe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
207 changed files with 570 additions and 101 deletions

View file

@ -19,21 +19,13 @@ use crate::script_runtime::{CanGc, JSContext};
/// Create the reflector for a new DOM object and yield ownership to the
/// reflector.
pub fn reflect_dom_object<T, U>(obj: Box<T>, global: &U) -> DomRoot<T>
pub fn reflect_dom_object<T, U>(obj: Box<T>, global: &U, can_gc: CanGc) -> DomRoot<T>
where
T: DomObject + DomObjectWrap,
U: DerivedFrom<GlobalScope>,
{
let global_scope = global.upcast();
unsafe {
T::WRAP(
GlobalScope::get_cx(),
global_scope,
None,
obj,
CanGc::note(),
)
}
unsafe { T::WRAP(GlobalScope::get_cx(), global_scope, None, obj, can_gc) }
}
pub fn reflect_dom_object_with_proto<T, U>(