diff options
author | Emilio Cobos Álvarez <emilio@crisal.io> | 2017-08-25 13:06:07 -0700 |
---|---|---|
committer | Bobby Holley <bobbyholley@gmail.com> | 2017-08-25 18:39:20 -0700 |
commit | 8c3cc9ba1f75d24fd506a3763559a2155260ec4d (patch) | |
tree | 273ea1e30e19f97dc9e897962b07253730adff69 /components/style/traversal.rs | |
parent | 2136dd2bb7fc9d78f796de4a49e01339bbbd2d31 (diff) | |
download | servo-8c3cc9ba1f75d24fd506a3763559a2155260ec4d.tar.gz servo-8c3cc9ba1f75d24fd506a3763559a2155260ec4d.zip |
Hook the recursive invalidation traversal up to the stack checker machinery.
MozReview-Commit-ID: 3tX3gHFTBT
Diffstat (limited to 'components/style/traversal.rs')
-rw-r--r-- | components/style/traversal.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/components/style/traversal.rs b/components/style/traversal.rs index 07359379105..a3fe06f3fef 100644 --- a/components/style/traversal.rs +++ b/components/style/traversal.rs @@ -139,7 +139,7 @@ pub trait DomTraversal<E: TElement> : Sync { fn pre_traverse( root: E, shared_context: &SharedStyleContext, - traversal_flags: TraversalFlags + traversal_flags: TraversalFlags, ) -> PreTraverseToken { // If this is an unstyled-only traversal, the caller has already verified // that there's something to traverse, and we don't need to do any @@ -155,7 +155,7 @@ pub trait DomTraversal<E: TElement> : Sync { if let Some(ref mut data) = data { // Invalidate our style, and the one of our siblings and descendants // as needed. - data.invalidate_style_if_needed(root, shared_context); + data.invalidate_style_if_needed(root, shared_context, None); // Make sure we don't have any stale RECONSTRUCTED_ANCESTOR bits from // the last traversal (at a potentially-higher root). From the @@ -828,7 +828,11 @@ where // as needed. // // NB: This will be a no-op if there's no snapshot. - child_data.invalidate_style_if_needed(child, &context.shared); + child_data.invalidate_style_if_needed( + child, + &context.shared, + Some(&context.thread_local.stack_limit_checker) + ); } if D::element_needs_traversal(child, flags, child_data.map(|d| &*d), Some(data)) { |