Chromium Code Reviews| 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..faf37123b5a2e5f903f9922878dc3a3e0ef916af 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(); |
|
sof
2015/07/22 06:08:42
STACK_ALLOCATED() ?
keishi
2015/07/22 06:30:47
Done.
|
| + public: |
| RecursionData() |
| : m_invalidateCustomPseudo(false) |
| , m_wholeSubtreeInvalid(false) |
| @@ -37,6 +39,13 @@ private: |
| , m_insertionPointCrossing(false) |
| { } |
| + DEFINE_INLINE_TRACE() |
|
sof
2015/07/22 06:08:42
Don't need this, as the backing store will be mark
keishi
2015/07/22 06:30:47
Done.
|
| + { |
| +#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; |
| @@ -60,6 +69,7 @@ private: |
| bool checkInvalidationSetsAgainstElement(Element&, RecursionData&); |
| class RecursionCheckpoint { |
| + DISALLOW_ALLOCATION(); |
|
sof
2015/07/22 06:08:42
STACK_ALLOCATED() ?
keishi
2015/07/22 06:30:47
Done.
|
| public: |
| RecursionCheckpoint(RecursionData* data) |
| : m_prevInvalidationSetsSize(data->m_invalidationSets.size()) |