| Index: third_party/WebKit/Source/modules/indexeddb/IDBTransaction.cpp
|
| diff --git a/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.cpp b/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.cpp
|
| index 90500c52352b99e1c8dc58da6f81fbbf247a3ad6..768bbe6702d0eff89d078c2f3d9dd5b9e8b268f2 100644
|
| --- a/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.cpp
|
| +++ b/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.cpp
|
| @@ -108,7 +108,7 @@ IDBTransaction::IDBTransaction(ExecutionContext* executionContext,
|
| int64_t id,
|
| const HashSet<String>& scope,
|
| IDBDatabase* db)
|
| - : ContextClient(executionContext),
|
| + : ContextLifecycleObserver(executionContext),
|
| m_id(id),
|
| m_database(db),
|
| m_mode(WebIDBTransactionModeReadOnly),
|
| @@ -125,7 +125,7 @@ IDBTransaction::IDBTransaction(ScriptState* scriptState,
|
| const HashSet<String>& scope,
|
| WebIDBTransactionMode mode,
|
| IDBDatabase* db)
|
| - : ContextClient(scriptState->getExecutionContext()),
|
| + : ContextLifecycleObserver(scriptState->getExecutionContext()),
|
| m_id(id),
|
| m_database(db),
|
| m_mode(mode),
|
| @@ -149,7 +149,7 @@ IDBTransaction::IDBTransaction(ExecutionContext* executionContext,
|
| IDBDatabase* db,
|
| IDBOpenDBRequest* openDBRequest,
|
| const IDBDatabaseMetadata& oldMetadata)
|
| - : ContextClient(executionContext),
|
| + : ContextLifecycleObserver(executionContext),
|
| m_id(id),
|
| m_database(db),
|
| m_openDBRequest(openDBRequest),
|
| @@ -164,6 +164,9 @@ IDBTransaction::IDBTransaction(ExecutionContext* executionContext,
|
| }
|
|
|
| IDBTransaction::~IDBTransaction() {
|
| + // Note: IDBTransaction is a ContextLifecycleObserver (rather than
|
| + // ContextClient) only in order to be able call upon getExecutionContext()
|
| + // during this destructor.
|
| DCHECK(m_state == Finished || !getExecutionContext());
|
| DCHECK(m_requestList.isEmpty() || !getExecutionContext());
|
| }
|
| @@ -177,7 +180,7 @@ DEFINE_TRACE(IDBTransaction) {
|
| visitor->trace(m_oldStoreMetadata);
|
| visitor->trace(m_deletedIndexes);
|
| EventTargetWithInlineData::trace(visitor);
|
| - ContextClient::trace(visitor);
|
| + ContextLifecycleObserver::trace(visitor);
|
| }
|
|
|
| void IDBTransaction::setError(DOMException* error) {
|
| @@ -479,7 +482,7 @@ const AtomicString& IDBTransaction::interfaceName() const {
|
| }
|
|
|
| ExecutionContext* IDBTransaction::getExecutionContext() const {
|
| - return ContextClient::getExecutionContext();
|
| + return ContextLifecycleObserver::getExecutionContext();
|
| }
|
|
|
| DispatchEventResult IDBTransaction::dispatchEventInternal(Event* event) {
|
|
|