void IDBTransaction::abortOnServerAndCancelRequests(TransactionOperation& operation) { LOG(IndexedDB, "IDBTransaction::abortOnServerAndCancelRequests"); ASSERT(m_transactionOperationQueue.isEmpty()); serverConnection().abortTransaction(*this); ASSERT(m_transactionOperationMap.contains(operation.identifier())); m_transactionOperationMap.remove(operation.identifier()); IDBError error(IDBDatabaseException::AbortError); for (auto& operation : m_abortQueue) operation->completed(IDBResultData::error(operation->identifier(), error)); // Since we're aborting, it should be impossible to have queued any further operations. ASSERT(m_transactionOperationQueue.isEmpty()); }