diff options
author | Nick Thompson <ncthom91@gmail.com> | 2015-07-28 10:06:00 -0700 |
---|---|---|
committer | Nick Thompson <ncthom91@gmail.com> | 2015-07-28 12:08:20 -0700 |
commit | 072609ab8c4e56ae463a14de5a6b6cf2582b127e (patch) | |
tree | 50ecb24b7606269f8cdf3740e2e5a5986f57a873 /components/script/dom/node.rs | |
parent | 14ccb22e679722ed3374c8facec21adcf0f2b247 (diff) | |
download | servo-072609ab8c4e56ae463a14de5a6b6cf2582b127e.tar.gz servo-072609ab8c4e56ae463a14de5a6b6cf2582b127e.zip |
Dispose layout data for every node removed from the tree
Diffstat (limited to 'components/script/dom/node.rs')
-rw-r--r-- | components/script/dom/node.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs index 54535fdb7af..15273bbb49e 100644 --- a/components/script/dom/node.rs +++ b/components/script/dom/node.rs @@ -370,8 +370,9 @@ impl<'a> PrivateNodeHelpers for &'a Node { for node in child.traverse_preorder() { node.set_flag(IS_IN_DOC, false); vtable_for(&&*node).unbind_from_tree(parent_in_doc); + node.layout_data.dispose(&node); } - child.layout_data.dispose(child); + let document = child.owner_doc(); document.content_and_heritage_changed(child, NodeDamage::OtherNodeDamage); } |