| Index: Source/platform/heap/Handle.h
|
| diff --git a/Source/platform/heap/Handle.h b/Source/platform/heap/Handle.h
|
| index 039942a967d4975a076a205fe34e5feb3aa66aea..f02e95c58106ce8483d4caa00cf76009632346aa 100644
|
| --- a/Source/platform/heap/Handle.h
|
| +++ b/Source/platform/heap/Handle.h
|
| @@ -220,6 +220,9 @@ protected:
|
| , m_roots(RootsAccessor::roots())
|
| #endif
|
| {
|
| + // We don't support allocation of thread local Persistents while doing
|
| + // thread shutdown/cleanup.
|
| + ASSERT(!ThreadState::current()->isTerminating());
|
| typename RootsAccessor::Lock lock;
|
| ASSERT(otherref.m_roots == m_roots); // Handles must belong to the same list.
|
| PersistentBase* other = const_cast<PersistentBase*>(&otherref);
|
| @@ -247,6 +250,14 @@ public:
|
| current->trace(visitor);
|
| }
|
|
|
| + int numberOfPersistents()
|
| + {
|
| + int numberOfPersistents = 0;
|
| + for (PersistentNode* current = m_next; current != this; current = current->m_next)
|
| + ++numberOfPersistents;
|
| + return numberOfPersistents;
|
| + }
|
| +
|
| virtual ~PersistentAnchor()
|
| {
|
| // FIXME: oilpan: Ideally we should have no left-over persistents at this point. However currently there is a
|
|
|