| Index: Source/core/css/invalidation/StyleInvalidator.h
|
| diff --git a/Source/core/css/invalidation/StyleInvalidator.h b/Source/core/css/invalidation/StyleInvalidator.h
|
| index 440002260098e51a0748129c8d82599039d91aeb..82d93d8181ae9ec301e6ab27c6d943082d5847b7 100644
|
| --- a/Source/core/css/invalidation/StyleInvalidator.h
|
| +++ b/Source/core/css/invalidation/StyleInvalidator.h
|
| @@ -29,7 +29,9 @@ public:
|
| DECLARE_TRACE();
|
|
|
| private:
|
| - struct RecursionData {
|
| + class RecursionData {
|
| + DISALLOW_ALLOCATION();
|
| + public:
|
| RecursionData()
|
| : m_invalidateCustomPseudo(false)
|
| , m_wholeSubtreeInvalid(false)
|
| @@ -37,6 +39,13 @@ private:
|
| , m_insertionPointCrossing(false)
|
| { }
|
|
|
| + DEFINE_INLINE_TRACE()
|
| + {
|
| +#if ENABLE(OILPAN)
|
| + visitor->trace(m_invalidationSets);
|
| +#endif
|
| + }
|
| +
|
| void pushInvalidationSet(const DescendantInvalidationSet&);
|
| bool matchesCurrentInvalidationSets(Element&);
|
| bool hasInvalidationSets() const { return !wholeSubtreeInvalid() && m_invalidationSets.size(); }
|
| @@ -47,7 +56,7 @@ private:
|
| bool treeBoundaryCrossing() const { return m_treeBoundaryCrossing; }
|
| bool insertionPointCrossing() const { return m_insertionPointCrossing; }
|
|
|
| - using InvalidationSets = Vector<const DescendantInvalidationSet*, 16>;
|
| + using InvalidationSets = WillBeHeapVector<RawPtrWillBeMember<const DescendantInvalidationSet>, 16>;
|
| InvalidationSets m_invalidationSets;
|
| bool m_invalidateCustomPseudo;
|
| bool m_wholeSubtreeInvalid;
|
|
|