aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom
diff options
context:
space:
mode:
authorPeter <ptrgonda@gmail.com>2015-05-06 16:37:52 -0400
committerPeter <ptrgonda@gmail.com>2015-05-26 10:01:03 -0400
commit7239d67353e8fed9f1845dc24c32b6081eeeef39 (patch)
tree0f5e442f98e271694a837681ff591f1dbf71959a /components/script/dom
parent387836c42e2377fc53d51d3404e6b91d170727a8 (diff)
downloadservo-7239d67353e8fed9f1845dc24c32b6081eeeef39.tar.gz
servo-7239d67353e8fed9f1845dc24c32b6081eeeef39.zip
fixes #5963
Diffstat (limited to 'components/script/dom')
-rw-r--r--components/script/dom/node.rs10
1 files changed, 3 insertions, 7 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index 048ee28b3a9..ee1451a0137 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -304,6 +304,7 @@ impl<'a> PrivateNodeHelpers for JSRef<'a, Node> {
assert!(self.parent_node.get().is_none());
for node in self.traverse_preorder() {
let node = node.root();
+ node.r().set_flag(IS_IN_DOC, false);
vtable_for(&node.r()).unbind_from_tree(parent_in_doc);
}
self.layout_data.dispose();
@@ -1658,7 +1659,7 @@ impl Node {
}
// https://dom.spec.whatwg.org/#concept-node-remove
- fn remove(node: JSRef<Node>, parent: JSRef<Node>, suppress_observers: SuppressObserver) {
+ fn remove(node: JSRef<Node>, parent: JSRef<Node>, _suppress_observers: SuppressObserver) {
assert!(node.GetParentNode().map_or(false, |node_parent| node_parent == Temporary::from_rooted(parent)));
// Step 1-5: ranges.
@@ -1666,13 +1667,8 @@ impl Node {
// Step 8.
parent.remove_child(node);
- node.set_flag(IS_IN_DOC, false);
-
// Step 9.
- match suppress_observers {
- SuppressObserver::Suppressed => (),
- SuppressObserver::Unsuppressed => node.node_removed(parent.is_in_doc()),
- }
+ node.node_removed(parent.is_in_doc());
}
// https://dom.spec.whatwg.org/#concept-node-clone