diff options
Diffstat (limited to 'src/components/main/layout/parallel.rs')
-rw-r--r-- | src/components/main/layout/parallel.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/components/main/layout/parallel.rs b/src/components/main/layout/parallel.rs index 859a3839333..a64abdc9a5c 100644 --- a/src/components/main/layout/parallel.rs +++ b/src/components/main/layout/parallel.rs @@ -8,6 +8,7 @@ use css::matching::MatchMethods; use layout::context::LayoutContext; +use layout::extra::LayoutAuxMethods; use layout::flow::{Flow, FlowLeafSet, PostorderFlowTraversal}; use layout::flow; use layout::layout_task::{AssignHeightsAndStoreOverflowTraversal, BubbleWidthsTraversal}; @@ -130,6 +131,12 @@ fn match_and_cascade_node(unsafe_layout_node: UnsafeLayoutNode, // Get a real layout node. let node: LayoutNode = cast::transmute(unsafe_layout_node); + // Initialize layout data. + // + // FIXME(pcwalton): Stop allocating here. Ideally this should just be done by the HTML + // parser. + node.initialize_layout_data(layout_context.layout_chan.clone()); + if node.is_element() { // Perform the CSS selector matching. let stylist: &Stylist = cast::transmute(layout_context.stylist); |