Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Stop storing display lists in an Arc
  • Loading branch information
pcwalton authored and jdm committed Jul 9, 2019
1 parent 7ca570d commit 6b9924b
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 8 deletions.
2 changes: 1 addition & 1 deletion components/layout/query.rs
Expand Up @@ -51,7 +51,7 @@ pub struct LayoutThreadData {
pub constellation_chan: IpcSender<ConstellationMsg>,

/// The root stacking context.
pub display_list: Option<Arc<DisplayList>>,
pub display_list: Option<DisplayList>,

pub indexable_text: IndexableText,

Expand Down
11 changes: 4 additions & 7 deletions components/layout_thread/lib.rs
Expand Up @@ -1203,7 +1203,7 @@ impl LayoutThread {
&mut build_state.indexable_text,
IndexableText::default(),
);
rw_data.display_list = Some(Arc::new(build_state.to_display_list()));
rw_data.display_list = Some(build_state.to_display_list());
}
}

Expand All @@ -1220,7 +1220,8 @@ impl LayoutThread {
if let Some(document) = document {
document.will_paint();
}
let display_list = (*rw_data.display_list.as_ref().unwrap()).clone();

let display_list = rw_data.display_list.as_mut().unwrap();

if self.dump_display_list {
display_list.print();
Expand All @@ -1232,11 +1233,7 @@ impl LayoutThread {
debug!("Layout done!");

// TODO: Avoid the temporary conversion and build webrender sc/dl directly!
let builder = rw_data
.display_list
.as_ref()
.unwrap()
.convert_to_webrender(self.id);
let builder = display_list.convert_to_webrender(self.id);

let viewport_size = Size2D::new(
self.viewport_size.width.to_f32_px(),
Expand Down

0 comments on commit 6b9924b

Please sign in to comment.