DescriptionMerge 141093
> REGRESSION: ChildrenAffectedBy flags lost between siblings which have child elements sharing style
> https://bugs.webkit.org/show_bug.cgi?id=105672
>
> Reviewed by Andreas Kling.
>
> Source/WebCore:
>
> Change in how childrenAffectedBy bits were stored made it easier to trigger an issue where childrenAffectedBy bits
> were not set due to sharing of styles between cousin elements.
>
> This patch fixes the issue by not sharing styles from children with parents who prevent sharing.
>
> Tests: fast/selectors/cousin-stylesharing-adjacent-selector.html
> fast/selectors/cousin-stylesharing-last-child-selector.html
>
> * css/StyleResolver.cpp:
> (WebCore::parentElementPreventsSharing):
> (WebCore::StyleResolver::locateCousinList):
> * dom/Element.cpp:
> (WebCore::Element::hasFlagsSetDuringStylingOfChildren):
> * dom/Element.h:
> (Element):
>
> LayoutTests:
>
> Two test cases by Philippe Wittenbergh that triggers the issue.
>
> * fast/selectors/cousin-stylesharing-adjacent-selector-expected.html: Added.
> * fast/selectors/cousin-stylesharing-adjacent-selector.html: Added.
> * fast/selectors/cousin-stylesharing-last-child-selector-expected.html: Added.
> * fast/selectors/cousin-stylesharing-last-child-selector.html: Added.
TBR=allan.jensen@digia.com
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=141895
Patch Set 1 #
Created: 7 years, 10 months ago
(Patch set is too large to download)
Messages
Total messages: 1 (0 generated)
|