aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/traversal.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/layout/traversal.rs')
-rw-r--r--components/layout/traversal.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/components/layout/traversal.rs b/components/layout/traversal.rs
index 692d956f000..bd07e1f72bb 100644
--- a/components/layout/traversal.rs
+++ b/components/layout/traversal.rs
@@ -65,7 +65,14 @@ impl<'lc, 'ln> DomTraversalContext<ServoLayoutNode<'ln>> for RecalcStyleAndConst
}
}
- fn process_preorder(&self, node: ServoLayoutNode<'ln>) { recalc_style_at(&self.context, self.root, node); }
+ fn process_preorder(&self, node: ServoLayoutNode<'ln>) {
+ // FIXME(pcwalton): Stop allocating here. Ideally this should just be done by the HTML
+ // parser.
+ node.initialize_data();
+
+ recalc_style_at(&self.context, self.root, node);
+ }
+
fn process_postorder(&self, node: ServoLayoutNode<'ln>) { construct_flows_at(&self.context, self.root, node); }
}