aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/node.rs
diff options
context:
space:
mode:
authorFernando Jiménez Moreno <ferjmoreno@gmail.com>2019-06-11 15:48:36 +0200
committerFernando Jiménez Moreno <ferjmoreno@gmail.com>2019-07-22 17:40:16 +0200
commit1f3c879a85a128c89e1a962e10e1e3d11550d37b (patch)
treef5015697a17c5ef83e02d183c5bcb3eb444b2794 /components/script/dom/node.rs
parentf8ae394cadb28958e52ae941bc3a89f4ea7fb4b5 (diff)
downloadservo-1f3c879a85a128c89e1a962e10e1e3d11550d37b.tar.gz
servo-1f3c879a85a128c89e1a962e10e1e3d11550d37b.zip
Detach shadow clean up
Diffstat (limited to 'components/script/dom/node.rs')
-rw-r--r--components/script/dom/node.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index fe7f9ec29c2..9eb9210509e 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -283,7 +283,7 @@ impl Node {
for node in new_child.traverse_preorder(ShadowIncluding::No) {
if parent_in_shadow_tree {
if let Some(shadow_root) = self.containing_shadow_root() {
- node.set_containing_shadow_root(&*shadow_root);
+ node.set_containing_shadow_root(Some(&*shadow_root));
}
debug_assert!(node.containing_shadow_root().is_some());
}
@@ -961,8 +961,8 @@ impl Node {
.map(|sr| DomRoot::from_ref(&**sr))
}
- pub fn set_containing_shadow_root(&self, shadow_root: &ShadowRoot) {
- self.ensure_rare_data().containing_shadow_root = Some(Dom::from_ref(shadow_root));
+ pub fn set_containing_shadow_root(&self, shadow_root: Option<&ShadowRoot>) {
+ self.ensure_rare_data().containing_shadow_root = shadow_root.map(|sr| Dom::from_ref(sr));
}
pub fn is_in_html_doc(&self) -> bool {
@@ -1241,7 +1241,7 @@ impl LayoutNodeHelpers for LayoutDom<Node> {
let parent = (*self.unsafe_get()).parent_node.get_inner_as_layout();
if let Some(ref parent) = parent {
if let Some(shadow_root) = parent.downcast::<ShadowRoot>() {
- return Some(shadow_root.get_host_for_layout().upcast());
+ return shadow_root.get_host_for_layout().map(|h| h.upcast());
}
}
parent