diff options
Diffstat (limited to 'components/script/dom/servoparser')
-rw-r--r-- | components/script/dom/servoparser/html.rs | 7 | ||||
-rw-r--r-- | components/script/dom/servoparser/xml.rs | 7 |
2 files changed, 8 insertions, 6 deletions
diff --git a/components/script/dom/servoparser/html.rs b/components/script/dom/servoparser/html.rs index 0f806171a9b..ac6330c3ca2 100644 --- a/components/script/dom/servoparser/html.rs +++ b/components/script/dom/servoparser/html.rs @@ -96,8 +96,9 @@ impl Tokenizer { } } -impl JSTraceable for HtmlTokenizer<TreeBuilder<JS<Node>, Sink>> { - fn trace(&self, trc: *mut JSTracer) { +#[allow(unsafe_code)] +unsafe impl JSTraceable for HtmlTokenizer<TreeBuilder<JS<Node>, Sink>> { + unsafe fn trace(&self, trc: *mut JSTracer) { struct Tracer(*mut JSTracer); let tracer = Tracer(trc); @@ -105,7 +106,7 @@ impl JSTraceable for HtmlTokenizer<TreeBuilder<JS<Node>, Sink>> { type Handle = JS<Node>; #[allow(unrooted_must_root)] fn trace_handle(&self, node: &JS<Node>) { - node.trace(self.0); + unsafe { node.trace(self.0); } } } diff --git a/components/script/dom/servoparser/xml.rs b/components/script/dom/servoparser/xml.rs index 9d527ce21d1..bcbfa6c4169 100644 --- a/components/script/dom/servoparser/xml.rs +++ b/components/script/dom/servoparser/xml.rs @@ -72,8 +72,9 @@ impl Tokenizer { } } -impl JSTraceable for XmlTokenizer<XmlTreeBuilder<JS<Node>, Sink>> { - fn trace(&self, trc: *mut JSTracer) { +#[allow(unsafe_code)] +unsafe impl JSTraceable for XmlTokenizer<XmlTreeBuilder<JS<Node>, Sink>> { + unsafe fn trace(&self, trc: *mut JSTracer) { struct Tracer(*mut JSTracer); let tracer = Tracer(trc); @@ -81,7 +82,7 @@ impl JSTraceable for XmlTokenizer<XmlTreeBuilder<JS<Node>, Sink>> { type Handle = JS<Node>; #[allow(unrooted_must_root)] fn trace_handle(&self, node: JS<Node>) { - node.trace(self.0); + unsafe { node.trace(self.0); } } } |