Diff
Modified: trunk/Source/WebCore/ChangeLog (159364 => 159365)
--- trunk/Source/WebCore/ChangeLog 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebCore/ChangeLog 2013-11-15 23:44:24 UTC (rev 159365)
@@ -1,3 +1,20 @@
+2013-11-15 Brady Eidson <beid...@apple.com>
+
+ Let IDBDatabaseBackend create IDBTransactionBackend's directly
+ https://bugs.webkit.org/show_bug.cgi?id=124438
+
+ Reviewed by Beth Dakin.
+
+ Create IDBTransactionBackends directly:
+ * Modules/indexeddb/IDBDatabaseBackend.cpp:
+ (WebCore::IDBDatabaseBackend::createTransaction):
+ * Modules/indexeddb/IDBDatabaseBackend.h:
+
+ Remove maybeCreateTransactionBackend():
+ * Modules/indexeddb/IDBFactoryBackendInterface.h:
+ * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
+ * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
+
2013-11-15 Jer Noble <jer.no...@apple.com>
HTMLMediaElement should not throw an exception from setCurrentTime or fastSeek.
Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackend.cpp (159364 => 159365)
--- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackend.cpp 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackend.cpp 2013-11-15 23:44:24 UTC (rev 159365)
@@ -429,15 +429,12 @@
}
}
-void IDBDatabaseBackend::createTransaction(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks> callbacks, const Vector<int64_t>& objectStoreIds, unsigned short mode)
+void IDBDatabaseBackend::createTransaction(int64_t transactionID, PassRefPtr<IDBDatabaseCallbacks> callbacks, const Vector<int64_t>& objectStoreIDs, unsigned short mode)
{
- RefPtr<IDBTransactionBackend> transaction = m_factory->maybeCreateTransactionBackend(this, transactionId, callbacks, objectStoreIds, static_cast<IndexedDB::TransactionMode>(mode));
+ RefPtr<IDBTransactionBackend> transaction = IDBTransactionBackend::create(this, transactionID, callbacks, objectStoreIDs, static_cast<IndexedDB::TransactionMode>(mode));
- if (!transaction)
- return;
-
- ASSERT(!m_transactions.contains(transactionId));
- m_transactions.add(transactionId, transaction.get());
+ ASSERT(!m_transactions.contains(transactionID));
+ m_transactions.add(transactionID, transaction.get());
}
void IDBDatabaseBackend::openConnection(PassRefPtr<IDBCallbacks> prpCallbacks, PassRefPtr<IDBDatabaseCallbacks> prpDatabaseCallbacks, int64_t transactionId, uint64_t version)
Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackend.h (159364 => 159365)
--- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackend.h 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackend.h 2013-11-15 23:44:24 UTC (rev 159365)
@@ -118,8 +118,6 @@
const IDBDatabaseMetadata& metadata() const { return m_metadata; }
void setCurrentVersion(uint64_t version) { m_metadata.version = version; }
- bool isIDBDatabaseBackend() { return true; }
-
bool hasPendingSecondHalfOpen() { return m_pendingSecondHalfOpen; }
void setPendingSecondHalfOpen(PassOwnPtr<IDBPendingOpenCall> pendingOpenCall) { m_pendingSecondHalfOpen = pendingOpenCall; }
Modified: trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.h (159364 => 159365)
--- trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.h 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.h 2013-11-15 23:44:24 UTC (rev 159365)
@@ -66,7 +66,6 @@
virtual void removeIDBDatabaseBackend(const String& uniqueIdentifier) = 0;
- virtual PassRefPtr<IDBTransactionBackend> maybeCreateTransactionBackend(IDBDatabaseBackend*, int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>& objectStoreIds, IndexedDB::TransactionMode) = 0;
};
} // namespace WebCore
Modified: trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp (159364 => 159365)
--- trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp 2013-11-15 23:44:24 UTC (rev 159365)
@@ -192,14 +192,6 @@
databaseBackend->openConnection(callbacks, databaseCallbacks, transactionId, version);
}
-PassRefPtr<IDBTransactionBackend> IDBFactoryBackendLevelDB::maybeCreateTransactionBackend(IDBDatabaseBackend* backend, int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks, const Vector<int64_t>& objectStoreIds, IndexedDB::TransactionMode mode)
-{
- if (!backend->isIDBDatabaseBackend())
- return 0;
-
- return IDBTransactionBackend::create(static_cast<IDBDatabaseBackend*>(backend), transactionId, databaseCallbacks, objectStoreIds, mode);
-}
-
} // namespace WebCore
#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
Modified: trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h (159364 => 159365)
--- trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h 2013-11-15 23:44:24 UTC (rev 159365)
@@ -63,8 +63,6 @@
virtual void deleteDatabase(const String& name, PassRefPtr<IDBCallbacks>, PassRefPtr<SecurityOrigin>, ScriptExecutionContext*, const String& dataDir) OVERRIDE FINAL;
- virtual PassRefPtr<IDBTransactionBackend> maybeCreateTransactionBackend(IDBDatabaseBackend*, int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>&, IndexedDB::TransactionMode) OVERRIDE FINAL;
-
protected:
virtual PassRefPtr<IDBBackingStoreLevelDB> openBackingStore(const SecurityOrigin&, const String& dataDir);
Modified: trunk/Source/WebKit2/ChangeLog (159364 => 159365)
--- trunk/Source/WebKit2/ChangeLog 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebKit2/ChangeLog 2013-11-15 23:44:24 UTC (rev 159365)
@@ -1,5 +1,16 @@
2013-11-15 Brady Eidson <beid...@apple.com>
+ Let IDBDatabaseBackend create IDBTransactionBackend's directly
+ https://bugs.webkit.org/show_bug.cgi?id=124438
+
+ Reviewed by Beth Dakin.
+
+ Remove maybeCreateTransactionBackend():
+ * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
+ * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
+
+2013-11-15 Brady Eidson <beid...@apple.com>
+
Remove last vestiges of IDBBackingStore* from IDBTransactionBackend.
https://bugs.webkit.org/show_bug.cgi?id=124436
Modified: trunk/Source/WebKit2/WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp (159364 => 159365)
--- trunk/Source/WebKit2/WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebKit2/WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp 2013-11-15 23:44:24 UTC (rev 159365)
@@ -100,12 +100,6 @@
notImplemented();
}
-PassRefPtr<IDBTransactionBackend> WebIDBFactoryBackend::maybeCreateTransactionBackend(IDBDatabaseBackend*, int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>&, IndexedDB::TransactionMode)
-{
- notImplemented();
- return 0;
-}
-
} // namespace WebKit
#endif // ENABLE(DATABASE_PROCESS)
Modified: trunk/Source/WebKit2/WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h (159364 => 159365)
--- trunk/Source/WebKit2/WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h 2013-11-15 23:42:41 UTC (rev 159364)
+++ trunk/Source/WebKit2/WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h 2013-11-15 23:44:24 UTC (rev 159365)
@@ -45,8 +45,6 @@
virtual void removeIDBDatabaseBackend(const String& uniqueIdentifier) OVERRIDE;
- virtual PassRefPtr<WebCore::IDBTransactionBackend> maybeCreateTransactionBackend(WebCore::IDBDatabaseBackend*, int64_t transactionId, PassRefPtr<WebCore::IDBDatabaseCallbacks>, const Vector<int64_t>&, WebCore::IndexedDB::TransactionMode) OVERRIDE;
-
private:
explicit WebIDBFactoryBackend(const String& databaseDirectoryIdentifier);
};