mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
style: Don't cache styles that got a cache hit.
This avoids doing wasted work, at least in the recascade case, and pretty likely in the other as well.
This commit is contained in:
parent
9d671058df
commit
2908c6a266
1 changed files with 12 additions and 9 deletions
|
@ -678,14 +678,14 @@ where
|
|||
resolver.resolve_style_with_default_parents()
|
||||
};
|
||||
|
||||
context.thread_local
|
||||
.sharing_cache
|
||||
.insert_if_possible(
|
||||
if !new_styles.primary.0.reused_via_rule_node {
|
||||
context.thread_local.sharing_cache.insert_if_possible(
|
||||
&element,
|
||||
new_styles.primary.style(),
|
||||
Some(&mut target),
|
||||
traversal_data.current_dom_depth,
|
||||
);
|
||||
}
|
||||
|
||||
new_styles
|
||||
}
|
||||
|
@ -724,12 +724,15 @@ where
|
|||
|
||||
resolver.cascade_styles_with_default_parents(cascade_inputs)
|
||||
};
|
||||
context.thread_local.sharing_cache.insert_if_possible(
|
||||
&element,
|
||||
new_styles.primary.style(),
|
||||
None,
|
||||
traversal_data.current_dom_depth,
|
||||
);
|
||||
|
||||
if !new_styles.primary.0.reused_via_rule_node {
|
||||
context.thread_local.sharing_cache.insert_if_possible(
|
||||
&element,
|
||||
new_styles.primary.style(),
|
||||
None,
|
||||
traversal_data.current_dom_depth,
|
||||
);
|
||||
}
|
||||
|
||||
new_styles
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue