diff options
Diffstat (limited to 'components/layout_thread')
-rw-r--r-- | components/layout_thread/lib.rs | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/components/layout_thread/lib.rs b/components/layout_thread/lib.rs index 76146989fc1..0b9eb75b8f4 100644 --- a/components/layout_thread/lib.rs +++ b/components/layout_thread/lib.rs @@ -1596,6 +1596,7 @@ impl LayoutThread { }); self.perform_post_main_layout_passes(data, + root_flow, reflow_goal, document, rw_data, @@ -1604,30 +1605,30 @@ impl LayoutThread { fn perform_post_main_layout_passes(&self, data: &Reflow, + mut root_flow: &mut FlowRef, reflow_goal: &ReflowGoal, document: Option<&ServoLayoutDocument>, rw_data: &mut LayoutThreadData, layout_context: &mut LayoutContext) { // Build the display list if necessary, and send it to the painter. - if let Some(mut root_flow) = self.root_flow.borrow().clone() { - self.compute_abs_pos_and_build_display_list(data, - reflow_goal, - document, - FlowRef::deref_mut(&mut root_flow), - &mut *layout_context, - rw_data); - self.first_reflow.set(false); - - if opts::get().trace_layout { - layout_debug::end_trace(self.generation.get()); - } + self.compute_abs_pos_and_build_display_list(data, + reflow_goal, + document, + FlowRef::deref_mut(&mut root_flow), + &mut *layout_context, + rw_data); - if opts::get().dump_flow_tree { - root_flow.print("Post layout flow tree".to_owned()); - } + self.first_reflow.set(false); - self.generation.set(self.generation.get() + 1); + if opts::get().trace_layout { + layout_debug::end_trace(self.generation.get()); } + + if opts::get().dump_flow_tree { + root_flow.print("Post layout flow tree".to_owned()); + } + + self.generation.set(self.generation.get() + 1); } fn reflow_all_nodes(flow: &mut Flow) { |