Index: Source/core/css/invalidation/DescendantInvalidationSet.cpp |
diff --git a/Source/core/css/invalidation/DescendantInvalidationSet.cpp b/Source/core/css/invalidation/DescendantInvalidationSet.cpp |
index 572926ea97fbb09603c350164a9785e1c50d0d14..db27ad75055987fab656bb842e77d8b86e0c698d 100644 |
--- a/Source/core/css/invalidation/DescendantInvalidationSet.cpp |
+++ b/Source/core/css/invalidation/DescendantInvalidationSet.cpp |
@@ -55,6 +55,7 @@ DescendantInvalidationSet::DescendantInvalidationSet() |
: m_allDescendantsMightBeInvalid(false) |
, m_customPseudoInvalid(false) |
, m_treeBoundaryCrossing(false) |
+ , m_insertionPointCrossing(false) |
{ |
} |
@@ -112,6 +113,9 @@ void DescendantInvalidationSet::combine(const DescendantInvalidationSet& other) |
if (other.treeBoundaryCrossing()) |
setTreeBoundaryCrossing(); |
+ if (other.insertionPointCrossing()) |
+ setInsertionPointCrossing(); |
+ |
if (other.m_classes) { |
for (const auto& className : *other.m_classes) |
addClass(className); |
@@ -196,6 +200,7 @@ void DescendantInvalidationSet::setWholeSubtreeInvalid() |
m_allDescendantsMightBeInvalid = true; |
m_treeBoundaryCrossing = false; |
+ m_insertionPointCrossing = false; |
m_classes = nullptr; |
m_ids = nullptr; |
m_tagNames = nullptr; |
@@ -222,6 +227,8 @@ void DescendantInvalidationSet::toTracedValue(TracedValue* value) const |
value->setBoolean("customPseudoInvalid", true); |
if (m_treeBoundaryCrossing) |
value->setBoolean("treeBoundaryCrossing", true); |
+ if (m_insertionPointCrossing) |
+ value->setBoolean("insertionPointCrossing", true); |
if (m_ids) { |
value->beginArray("ids"); |