| Index: Source/modules/indexeddb/IDBPendingTransactionMonitor.h
|
| diff --git a/Source/modules/indexeddb/IDBPendingTransactionMonitor.h b/Source/modules/indexeddb/IDBPendingTransactionMonitor.h
|
| index 6d4b4d94d64921433831e8989b04d0d862c28ab6..3eff46e34a366959e3ab9ce1fcaacbf97a2ac301 100644
|
| --- a/Source/modules/indexeddb/IDBPendingTransactionMonitor.h
|
| +++ b/Source/modules/indexeddb/IDBPendingTransactionMonitor.h
|
| @@ -41,14 +41,15 @@
|
| // which is set to true on creation, but must be set to false when control
|
| // returns to the event loop.
|
|
|
| -class IDBPendingTransactionMonitor : public NoBaseWillBeGarbageCollected<IDBPendingTransactionMonitor>, public WillBeHeapSupplement<ExecutionContext> {
|
| - WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(IDBPendingTransactionMonitor);
|
| - DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(IDBPendingTransactionMonitor);
|
| +class IDBPendingTransactionMonitor : public Supplement<ExecutionContext> {
|
| WTF_MAKE_NONCOPYABLE(IDBPendingTransactionMonitor);
|
|
|
| public:
|
| - static IDBPendingTransactionMonitor& from(WillBeHeapSupplementable<ExecutionContext>&);
|
| - virtual void trace(Visitor*) OVERRIDE;
|
| + static IDBPendingTransactionMonitor& from(Supplementable<ExecutionContext>&);
|
| + virtual ~IDBPendingTransactionMonitor();
|
| + // The trace functino doesn't work until ExecutionContext is moved to Oilpan
|
| + // heap.
|
| + virtual void trace(Visitor* visitor) OVERRIDE { Supplement<ExecutionContext>::trace(visitor); }
|
| void addNewTransaction(IDBTransaction&);
|
| void deactivateNewTransactions();
|
|
|
| @@ -56,7 +57,8 @@
|
| IDBPendingTransactionMonitor();
|
| static const char* supplementName();
|
|
|
| - PersistentHeapVectorWillBeHeapVector<Member<IDBTransaction> > m_transactions;
|
| + typedef PersistentHeapVector<Member<IDBTransaction> > TransactionList;
|
| + TransactionList m_transactions;
|
| };
|
|
|
| } // namespace blink
|
|
|