void IDBRequest::setVersionChangeTransaction(IDBTransaction& transaction) { ASSERT(!m_transaction); ASSERT(transaction.isVersionChange()); ASSERT(!transaction.isFinishedOrFinishing()); m_transaction = &transaction; }
void IDBRequest::setVersionChangeTransaction(IDBTransaction& transaction) { ASSERT(&originThread() == &Thread::current()); ASSERT(!m_transaction); ASSERT(transaction.isVersionChange()); ASSERT(!transaction.isFinishedOrFinishing()); m_transaction = &transaction; }
void IDBDatabase::willAbortTransaction(IDBTransaction& transaction) { LOG(IndexedDB, "IDBDatabase::willAbortTransaction %s", transaction.info().identifier().loggingString().utf8().data()); auto refTransaction = m_activeTransactions.take(transaction.info().identifier()); ASSERT(refTransaction); m_abortingTransactions.set(transaction.info().identifier(), WTF::move(refTransaction)); if (transaction.isVersionChange()) m_closePending = true; }
void IDBDatabase::didAbortTransaction(IDBTransaction& transaction) { LOG(IndexedDB, "IDBDatabase::didAbortTransaction"); if (transaction.isVersionChange()) { ASSERT(transaction.originalDatabaseInfo()); m_info = *transaction.originalDatabaseInfo(); } didCommitOrAbortTransaction(transaction); }
void IDBDatabase::didAbortTransaction(IDBTransaction& transaction) { LOG(IndexedDB, "IDBDatabase::didAbortTransaction %s", transaction.info().identifier().loggingString().utf8().data()); if (transaction.isVersionChange()) { ASSERT(transaction.originalDatabaseInfo()); ASSERT(m_info.version() == transaction.originalDatabaseInfo()->version()); m_closePending = true; maybeCloseInServer(); } didCommitOrAbortTransaction(transaction); }
void IDBDatabase::didAbortTransaction(IDBTransaction& transaction) { LOG(IndexedDB, "IDBDatabase::didAbortTransaction %s", transaction.info().identifier().loggingString().utf8().data()); if (transaction.isVersionChange()) { ASSERT(transaction.originalDatabaseInfo()); m_info = *transaction.originalDatabaseInfo(); m_closePending = true; m_closedInServer = true; m_serverConnection->databaseConnectionClosed(*this); } didCommitOrAbortTransaction(transaction); }
void IDBDatabase::willAbortTransaction(IDBTransaction& transaction) { LOG(IndexedDB, "IDBDatabase::willAbortTransaction %s", transaction.info().identifier().loggingString().utf8().data()); ASSERT(&originThread() == &Thread::current()); auto refTransaction = m_activeTransactions.take(transaction.info().identifier()); if (!refTransaction) refTransaction = m_committingTransactions.take(transaction.info().identifier()); ASSERT(refTransaction); m_abortingTransactions.set(transaction.info().identifier(), WTFMove(refTransaction)); if (transaction.isVersionChange()) { ASSERT(transaction.originalDatabaseInfo()); m_info = *transaction.originalDatabaseInfo(); m_closePending = true; } }