Index: Source/modules/indexeddb/IDBDatabase.cpp |
diff --git a/Source/modules/indexeddb/IDBDatabase.cpp b/Source/modules/indexeddb/IDBDatabase.cpp |
index 2b12bf5250caba46e937bf62fc970b52c61fca25..0b4073ebb97d2e5bbe99afa94791d54e0a604e81 100644 |
--- a/Source/modules/indexeddb/IDBDatabase.cpp |
+++ b/Source/modules/indexeddb/IDBDatabase.cpp |
@@ -51,14 +51,14 @@ namespace WebCore { |
DEFINE_GC_MAP(IDBDatabase); |
-PassRefPtr<IDBDatabase> IDBDatabase::create(ScriptExecutionContext* context, PassRefPtr<IDBDatabaseBackendInterface> database, PassRefPtr<IDBDatabaseCallbacks> callbacks) |
+IDBDatabase* IDBDatabase::create(ScriptExecutionContext* context, IDBDatabaseBackendInterface* database, IDBDatabaseCallbacks* callbacks) |
{ |
- RefPtr<IDBDatabase> idbDatabase(adoptRef(new IDBDatabase(context, database, callbacks))); |
+ IDBDatabase* idbDatabase = new IDBDatabase(context, database, callbacks); |
idbDatabase->suspendIfNeeded(); |
- return idbDatabase.release(); |
+ return idbDatabase; |
} |
-IDBDatabase::IDBDatabase(ScriptExecutionContext* context, PassRefPtr<IDBDatabaseBackendInterface> backend, PassRefPtr<IDBDatabaseCallbacks> callbacks) |
+IDBDatabase::IDBDatabase(ScriptExecutionContext* context, IDBDatabaseBackendInterface* backend, IDBDatabaseCallbacks* callbacks) |
: ActiveDOMObject(context) |
, m_backend(backend) |
, m_closePending(false) |
@@ -398,4 +398,10 @@ EventTargetData* IDBDatabase::ensureEventTargetData() |
return &m_eventTargetData; |
} |
+void IDBDatabase::trace(Visitor* visitor) |
+{ |
+ visitor->visit(m_backend); |
+ visitor->visit(m_databaseCallbacks); |
+} |
+ |
} // namespace WebCore |