Diff
Modified: branches/safari-601-branch/LayoutTests/ChangeLog (190500 => 190501)
--- branches/safari-601-branch/LayoutTests/ChangeLog 2015-10-02 13:57:48 UTC (rev 190500)
+++ branches/safari-601-branch/LayoutTests/ChangeLog 2015-10-02 13:58:00 UTC (rev 190501)
@@ -1,5 +1,27 @@
2015-10-02 Matthew Hanson <matthew_han...@apple.com>
+ Merge r189560. rdar://problem/22824659
+
+ 2015-09-09 Benjamin Poulain <bpoul...@apple.com>
+
+ CSS general sibling selectors does not work without CSS JIT
+ https://bugs.webkit.org/show_bug.cgi?id=148987
+ rdar://problem/22559860
+
+ Reviewed by Andreas Kling.
+
+ There are multiple variations of the same tests to test
+ cases where we JIT and cases without JIT.
+
+ * fast/css/indirect-adjacent-style-invalidation-1-expected.txt: Added.
+ * fast/css/indirect-adjacent-style-invalidation-1.html: Added.
+ * fast/css/indirect-adjacent-style-invalidation-2-expected.txt: Added.
+ * fast/css/indirect-adjacent-style-invalidation-2.html: Added.
+ * fast/css/indirect-adjacent-style-invalidation-3-expected.txt: Added.
+ * fast/css/indirect-adjacent-style-invalidation-3.html: Added.
+
+2015-10-02 Matthew Hanson <matthew_han...@apple.com>
+
Merge r188768. rdar://problem/22802019
2015-08-21 Joseph Pecoraro <pecor...@apple.com>
Added: branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-1-expected.txt (0 => 190501)
--- branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-1-expected.txt (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-1-expected.txt 2015-10-02 13:58:00 UTC (rev 190501)
@@ -0,0 +1,35 @@
+Test the style invalidation of elements affected by an indirect adjacent.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 0, 0)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 1, 2)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 1, 2)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 0, 0)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-1.html (0 => 190501)
--- branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-1.html (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-1.html 2015-10-02 13:58:00 UTC (rev 190501)
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src=""
+<style>
+* {
+ color: black;
+}
+:checked ~ target {
+ color: rgb(0, 1, 2);
+}
+</style>
+</head>
+<body>
+ <div>
+ <!-- With renderer -->
+ <input class="activator" type="checkbox">
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <target></target>
+ </div>
+ <div style="display:none;">
+ <!-- Without renderer -->
+ <input class="activator" type="radio">
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <target></target>
+ </div>
+</body>
+<script>
+
+description('Test the style invalidation of elements affected by an indirect adjacent.');
+
+function shouldNeedStyleRecalc(expected) {
+ var testFunction = expected ? shouldBeTrue : shouldBeFalse;
+ testFunction("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\".activator\")[0])");
+ testFunction("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\".activator\")[1])");
+ shouldBeFalse("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\"target\")[0])");
+ shouldBeFalse("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\"target\")[1])");
+}
+
+function setId(name) {
+ var allTargets = document.querySelectorAll("target");
+ allTargets[0].id = name;
+ allTargets[1].id = name;
+}
+
+function checkStyle(expectedColor) {
+ var allTargets = document.querySelectorAll("target");
+ shouldBeEqualToString('getComputedStyle(document.querySelectorAll("target")[0]).color', expectedColor);
+ shouldBeEqualToString('getComputedStyle(document.querySelectorAll("target")[1]).color', expectedColor);
+}
+// Force a layout to ensure we don't have dirty styles.
+var offsetTop = document.documentElement.offsetTop;
+
+// Initial state.
+shouldNeedStyleRecalc(false);
+checkStyle("rgb(0, 0, 0)");
+
+// Check the input fields.
+var allActivators = document.querySelectorAll("input.activator:matches([type=checkbox], [type=radio])");
+for (let i = 0; i < allActivators.length; ++i) {
+ allActivators[i].checked = true;
+}
+shouldNeedStyleRecalc(true);
+checkStyle("rgb(0, 1, 2)");
+shouldNeedStyleRecalc(false);
+
+// Uncheck the input fields.
+var allActivators = document.querySelectorAll("input.activator:matches([type=checkbox], [type=radio])");
+for (let i = 0; i < allActivators.length; ++i) {
+ allActivators[i].checked = false;
+}
+shouldNeedStyleRecalc(true);
+checkStyle("rgb(0, 0, 0)");
+shouldNeedStyleRecalc(false);
+
+</script>
+<script src=""
+</html>
Added: branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-2-expected.txt (0 => 190501)
--- branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-2-expected.txt (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-2-expected.txt 2015-10-02 13:58:00 UTC (rev 190501)
@@ -0,0 +1,35 @@
+Test the style invalidation of elements affected by an indirect adjacent.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 0, 0)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 1, 2)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 1, 2)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 0, 0)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-2.html (0 => 190501)
--- branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-2.html (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-2.html 2015-10-02 13:58:00 UTC (rev 190501)
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src=""
+<style>
+* {
+ color: black;
+}
+:checked:first-of-type ~ target {
+ color: rgb(0, 1, 2);
+}
+</style>
+</head>
+<body>
+ <div>
+ <!-- With renderer -->
+ <input class="activator" type="checkbox">
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <target></target>
+ </div>
+ <div style="display:none;">
+ <!-- Without renderer -->
+ <input class="activator" type="radio">
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <target></target>
+ </div>
+</body>
+<script>
+
+description('Test the style invalidation of elements affected by an indirect adjacent.');
+
+function shouldNeedStyleRecalc(expected) {
+ var testFunction = expected ? shouldBeTrue : shouldBeFalse;
+ testFunction("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\".activator\")[0])");
+ testFunction("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\".activator\")[1])");
+ shouldBeFalse("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\"target\")[0])");
+ shouldBeFalse("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\"target\")[1])");
+}
+
+function setId(name) {
+ var allTargets = document.querySelectorAll("target");
+ allTargets[0].id = name;
+ allTargets[1].id = name;
+}
+
+function checkStyle(expectedColor) {
+ var allTargets = document.querySelectorAll("target");
+ shouldBeEqualToString('getComputedStyle(document.querySelectorAll("target")[0]).color', expectedColor);
+ shouldBeEqualToString('getComputedStyle(document.querySelectorAll("target")[1]).color', expectedColor);
+}
+// Force a layout to ensure we don't have dirty styles.
+var offsetTop = document.documentElement.offsetTop;
+
+// Initial state.
+shouldNeedStyleRecalc(false);
+checkStyle("rgb(0, 0, 0)");
+
+// Check the input fields.
+var allActivators = document.querySelectorAll("input.activator:matches([type=checkbox], [type=radio])");
+for (let i = 0; i < allActivators.length; ++i) {
+ allActivators[i].checked = true;
+}
+shouldNeedStyleRecalc(true);
+checkStyle("rgb(0, 1, 2)");
+shouldNeedStyleRecalc(false);
+
+// Uncheck the input fields.
+var allActivators = document.querySelectorAll("input.activator:matches([type=checkbox], [type=radio])");
+for (let i = 0; i < allActivators.length; ++i) {
+ allActivators[i].checked = false;
+}
+shouldNeedStyleRecalc(true);
+checkStyle("rgb(0, 0, 0)");
+shouldNeedStyleRecalc(false);
+
+</script>
+<script src=""
+</html>
Added: branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-3-expected.txt (0 => 190501)
--- branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-3-expected.txt (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-3-expected.txt 2015-10-02 13:58:00 UTC (rev 190501)
@@ -0,0 +1,35 @@
+Test the style invalidation of elements affected by an indirect adjacent.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 0, 0)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 1, 2)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 1, 2)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is true
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS getComputedStyle(document.querySelectorAll("target")[0]).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.querySelectorAll("target")[1]).color is "rgb(0, 0, 0)"
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(".activator")[1]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[0]) is false
+PASS window.internals.nodeNeedsStyleRecalc(document.querySelectorAll("target")[1]) is false
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-3.html (0 => 190501)
--- branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-3.html (rev 0)
+++ branches/safari-601-branch/LayoutTests/fast/css/indirect-adjacent-style-invalidation-3.html 2015-10-02 13:58:00 UTC (rev 190501)
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src=""
+<style>
+* {
+ color: black;
+}
+:checked:matches(*, :last-of-type, *) ~ target {
+ color: rgb(0, 1, 2);
+}
+</style>
+</head>
+<body>
+ <div>
+ <!-- With renderer -->
+ <input class="activator" type="checkbox">
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <target></target>
+ </div>
+ <div style="display:none;">
+ <!-- Without renderer -->
+ <input class="activator" type="radio">
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <padding></padding>
+ <target></target>
+ </div>
+</body>
+<script>
+
+description('Test the style invalidation of elements affected by an indirect adjacent.');
+
+function shouldNeedStyleRecalc(expected) {
+ var testFunction = expected ? shouldBeTrue : shouldBeFalse;
+ testFunction("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\".activator\")[0])");
+ testFunction("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\".activator\")[1])");
+ shouldBeFalse("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\"target\")[0])");
+ shouldBeFalse("window.internals.nodeNeedsStyleRecalc(document.querySelectorAll(\"target\")[1])");
+}
+
+function setId(name) {
+ var allTargets = document.querySelectorAll("target");
+ allTargets[0].id = name;
+ allTargets[1].id = name;
+}
+
+function checkStyle(expectedColor) {
+ var allTargets = document.querySelectorAll("target");
+ shouldBeEqualToString('getComputedStyle(document.querySelectorAll("target")[0]).color', expectedColor);
+ shouldBeEqualToString('getComputedStyle(document.querySelectorAll("target")[1]).color', expectedColor);
+}
+// Force a layout to ensure we don't have dirty styles.
+var offsetTop = document.documentElement.offsetTop;
+
+// Initial state.
+shouldNeedStyleRecalc(false);
+checkStyle("rgb(0, 0, 0)");
+
+// Check the input fields.
+var allActivators = document.querySelectorAll("input.activator:matches([type=checkbox], [type=radio])");
+for (let i = 0; i < allActivators.length; ++i) {
+ allActivators[i].checked = true;
+}
+shouldNeedStyleRecalc(true);
+checkStyle("rgb(0, 1, 2)");
+shouldNeedStyleRecalc(false);
+
+// Uncheck the input fields.
+var allActivators = document.querySelectorAll("input.activator:matches([type=checkbox], [type=radio])");
+for (let i = 0; i < allActivators.length; ++i) {
+ allActivators[i].checked = false;
+}
+shouldNeedStyleRecalc(true);
+checkStyle("rgb(0, 0, 0)");
+shouldNeedStyleRecalc(false);
+
+</script>
+<script src=""
+</html>
Modified: branches/safari-601-branch/Source/WebCore/ChangeLog (190500 => 190501)
--- branches/safari-601-branch/Source/WebCore/ChangeLog 2015-10-02 13:57:48 UTC (rev 190500)
+++ branches/safari-601-branch/Source/WebCore/ChangeLog 2015-10-02 13:58:00 UTC (rev 190501)
@@ -1,5 +1,27 @@
2015-10-02 Matthew Hanson <matthew_han...@apple.com>
+ Merge r189560. rdar://problem/22824659
+
+ 2015-09-09 Benjamin Poulain <bpoul...@apple.com>
+
+ CSS general sibling selectors does not work without CSS JIT
+ https://bugs.webkit.org/show_bug.cgi?id=148987
+ rdar://problem/22559860
+
+ Reviewed by Andreas Kling.
+
+ When traversing with the indirect adjacent combinator, SelectorChecker
+ was not setting the style invalidation flag on the right element.
+
+ Tests: fast/css/indirect-adjacent-style-invalidation-1.html
+ fast/css/indirect-adjacent-style-invalidation-2.html
+ fast/css/indirect-adjacent-style-invalidation-3.html
+
+ * css/SelectorChecker.cpp:
+ (WebCore::SelectorChecker::matchRecursively):
+
+2015-10-02 Matthew Hanson <matthew_han...@apple.com>
+
Merge r188990. rdar://problem/22802029
2015-08-26 Beth Dakin <bda...@apple.com>
Modified: branches/safari-601-branch/Source/WebCore/css/SelectorChecker.cpp (190500 => 190501)
--- branches/safari-601-branch/Source/WebCore/css/SelectorChecker.cpp 2015-10-02 13:57:48 UTC (rev 190500)
+++ branches/safari-601-branch/Source/WebCore/css/SelectorChecker.cpp 2015-10-02 13:58:00 UTC (rev 190501)
@@ -353,7 +353,7 @@
nextContext.elementStyle = nullptr;
for (; nextContext.element; nextContext.element = nextContext.element->previousElementSibling()) {
if (context.resolvingMode == Mode::ResolvingStyle)
- context.element->setAffectsNextSiblingElementStyle();
+ nextContext.element->setAffectsNextSiblingElementStyle();
PseudoIdSet ignoreDynamicPseudo;
unsigned indirectAdjacentSpecificity = 0;