From 07f86404cd4c58724f85ed6cece05426f8e6702d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Sun, 25 Feb 2018 17:58:59 +0100 Subject: [PATCH] style: Make the simplified children iterator check account for Shadow DOM on its own. We are relying in the XBL binding for the shadow host, we need to check explicitly. Also, we were checking in_shadow_tree, which is really broad. Just is_html_slot_element should do, since the rest of the nodes should have only light tree children. Bug: 1425759 Reviewed-by: xidorn MozReview-Commit-ID: KAFRVxaLsK --- components/style/gecko/wrapper.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/style/gecko/wrapper.rs b/components/style/gecko/wrapper.rs index 0c5e283cee7..20e9f9f3860 100644 --- a/components/style/gecko/wrapper.rs +++ b/components/style/gecko/wrapper.rs @@ -959,7 +959,8 @@ impl<'le> TElement for GeckoElement<'le> { // ::before/::after, XBL bindings, or nsIAnonymousContentCreators. if self.is_in_anonymous_subtree() || self.has_xbl_binding_with_content() || - self.is_in_shadow_tree() || + self.is_html_slot_element() || + self.shadow_root().is_some() || self.may_have_anonymous_children() { unsafe { let mut iter: structs::StyleChildrenIterator = ::std::mem::zeroed();