aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/layout/layout_task.rs4
-rw-r--r--components/layout/parallel.rs10
2 files changed, 8 insertions, 6 deletions
diff --git a/components/layout/layout_task.rs b/components/layout/layout_task.rs
index 58a12cf9472..e3349ef19de 100644
--- a/components/layout/layout_task.rs
+++ b/components/layout/layout_task.rs
@@ -19,7 +19,7 @@ use fragment::{Fragment, FragmentBorderBoxIterator};
use incremental::{LayoutDamageComputation, REFLOW, REFLOW_ENTIRE_DOCUMENT, REPAINT};
use layout_debug;
use opaque_node::OpaqueNodeMethods;
-use parallel::{self, UnsafeFlow};
+use parallel::{self, WorkQueueData};
use sequential;
use wrapper::LayoutNode;
@@ -109,7 +109,7 @@ pub struct LayoutTaskData {
pub stylist: Box<Stylist>,
/// The workers that we use for parallel operation.
- pub parallel_traversal: Option<WorkQueue<SharedLayoutContextWrapper, UnsafeFlow>>,
+ pub parallel_traversal: Option<WorkQueue<SharedLayoutContextWrapper, WorkQueueData>>,
/// The dirty rect. Used during display list construction.
pub dirty: Rect<Au>,
diff --git a/components/layout/parallel.rs b/components/layout/parallel.rs
index 1792e41aa6d..3e186f06d95 100644
--- a/components/layout/parallel.rs
+++ b/components/layout/parallel.rs
@@ -28,6 +28,8 @@ use util::workqueue::{WorkQueue, WorkUnit, WorkerProxy};
const CHUNK_SIZE: usize = 64;
+pub struct WorkQueueData(usize, usize);
+
#[allow(dead_code)]
fn static_assertion(node: UnsafeLayoutNode) {
unsafe {
@@ -443,7 +445,7 @@ fn build_display_list(unsafe_flow: UnsafeFlow,
}
fn run_queue_with_custom_work_data_type<To,F>(
- queue: &mut WorkQueue<SharedLayoutContextWrapper,UnsafeLayoutNode>,
+ queue: &mut WorkQueue<SharedLayoutContextWrapper, WorkQueueData>,
callback: F)
where To: 'static + Send, F: FnOnce(&mut WorkQueue<SharedLayoutContextWrapper,To>) {
unsafe {
@@ -455,7 +457,7 @@ fn run_queue_with_custom_work_data_type<To,F>(
pub fn traverse_dom_preorder(root: LayoutNode,
shared_layout_context: &SharedLayoutContext,
- queue: &mut WorkQueue<SharedLayoutContextWrapper, UnsafeLayoutNode>) {
+ queue: &mut WorkQueue<SharedLayoutContextWrapper, WorkQueueData>) {
queue.data = SharedLayoutContextWrapper(shared_layout_context as *const _);
run_queue_with_custom_work_data_type(queue, |queue| {
@@ -473,7 +475,7 @@ pub fn traverse_flow_tree_preorder(
profiler_metadata: ProfilerMetadata,
time_profiler_chan: time::ProfilerChan,
shared_layout_context: &SharedLayoutContext,
- queue: &mut WorkQueue<SharedLayoutContextWrapper,UnsafeLayoutNode>) {
+ queue: &mut WorkQueue<SharedLayoutContextWrapper, WorkQueueData>) {
if opts::get().bubble_inline_sizes_separately {
let layout_context = LayoutContext::new(shared_layout_context);
let bubble_inline_sizes = BubbleISizes { layout_context: &layout_context };
@@ -500,7 +502,7 @@ pub fn build_display_list_for_subtree(
profiler_metadata: ProfilerMetadata,
time_profiler_chan: time::ProfilerChan,
shared_layout_context: &SharedLayoutContext,
- queue: &mut WorkQueue<SharedLayoutContextWrapper,UnsafeLayoutNode>) {
+ queue: &mut WorkQueue<SharedLayoutContextWrapper, WorkQueueData>) {
queue.data = SharedLayoutContextWrapper(shared_layout_context as *const _);
run_queue_with_custom_work_data_type(queue, |queue| {