Commit c2eb6956 authored by keishi@chromium.org's avatar keishi@chromium.org

Revert of Oilpan: Remove raw pointer to DescendantInvalidationSet from...

Revert of Oilpan: Remove raw pointer to DescendantInvalidationSet from StyleInvalidator::RecursionData (patchset #4 id:60001 of https://codereview.chromium.org/1225233005/ )

Reason for revert:
blink_perf.css regression
https://code.google.com/p/chromium/issues/detail?id=513378#makechanges

Original issue's description:
> Oilpan: Remove raw pointer to DescendantInvalidationSet from StyleInvalidator::RecursionData
> 
> BUG=509911
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=199288
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=199294

TBR=haraken@chromium.org,yutak@chromium.org,oilpan-reviews@chromium.org,sigbjornf@opera.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=509911

Review URL: https://codereview.chromium.org/1330763002

git-svn-id: svn://svn.chromium.org/blink/trunk@201869 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 49a1acc0
......@@ -29,9 +29,7 @@ public:
DECLARE_TRACE();
private:
class RecursionData {
STACK_ALLOCATED();
public:
struct RecursionData {
RecursionData()
: m_invalidateCustomPseudo(false)
, m_wholeSubtreeInvalid(false)
......@@ -49,7 +47,7 @@ private:
bool treeBoundaryCrossing() const { return m_treeBoundaryCrossing; }
bool insertionPointCrossing() const { return m_insertionPointCrossing; }
using InvalidationSets = WillBeHeapVector<RawPtrWillBeMember<const DescendantInvalidationSet>, 16>;
using InvalidationSets = Vector<const DescendantInvalidationSet*, 16>;
InvalidationSets m_invalidationSets;
bool m_invalidateCustomPseudo;
bool m_wholeSubtreeInvalid;
......@@ -62,7 +60,6 @@ private:
bool checkInvalidationSetsAgainstElement(Element&, RecursionData&);
class RecursionCheckpoint {
STACK_ALLOCATED();
public:
RecursionCheckpoint(RecursionData* data)
: m_prevInvalidationSetsSize(data->m_invalidationSets.size())
......@@ -87,7 +84,6 @@ private:
bool m_prevWholeSubtreeInvalid;
bool m_treeBoundaryCrossing;
bool m_insertionPointCrossing;
// This is a stack reference and need not separate tracing.
RecursionData* m_data;
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment