aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout_thread/dom_wrapper.rs
diff options
context:
space:
mode:
authorFernando Jiménez Moreno <ferjmoreno@gmail.com>2019-02-19 19:00:29 +0100
committerFernando Jiménez Moreno <ferjmoreno@gmail.com>2019-04-26 11:31:16 +0200
commitd7b6a6f509995eaaa2d44b6c5522f758f3a2925b (patch)
treed1e68b781d234f1183d2f6c8fd00fc3e0b0b0f90 /components/layout_thread/dom_wrapper.rs
parente66438de48c61c1c23e92b2e77945e05a524e741 (diff)
downloadservo-d7b6a6f509995eaaa2d44b6c5522f758f3a2925b.tar.gz
servo-d7b6a6f509995eaaa2d44b6c5522f758f3a2925b.zip
Do not set dirty out-of-doc nodes
Diffstat (limited to 'components/layout_thread/dom_wrapper.rs')
-rw-r--r--components/layout_thread/dom_wrapper.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/components/layout_thread/dom_wrapper.rs b/components/layout_thread/dom_wrapper.rs
index 1aa9488c327..0558d648eb8 100644
--- a/components/layout_thread/dom_wrapper.rs
+++ b/components/layout_thread/dom_wrapper.rs
@@ -313,6 +313,10 @@ impl<'ln> TNode for ServoLayoutNode<'ln> {
self.node.downcast().map(ServoShadowRoot::from_layout_js)
}
+ fn is_in_document(&self) -> bool {
+ unsafe { self.node.get_flag(NodeFlags::IS_IN_DOC) }
+ }
+
fn is_connected(&self) -> bool {
unsafe { self.node.get_flag(NodeFlags::IS_CONNECTED) }
}
@@ -555,7 +559,7 @@ impl<'le> TElement for ServoLayoutElement<'le> {
}
unsafe fn set_dirty_descendants(&self) {
- debug_assert!(self.as_node().is_connected());
+ debug_assert!(self.as_node().is_in_document());
self.as_node()
.node
.set_flag(NodeFlags::HAS_DIRTY_DESCENDANTS, true)