Index: Source/modules/indexeddb/IDBDatabase.cpp |
diff --git a/Source/modules/indexeddb/IDBDatabase.cpp b/Source/modules/indexeddb/IDBDatabase.cpp |
index 111ccdd9cce5eccf903648fd6b945e3cd1e4ed99..e48dcda862a34b78b73ef103163817d873bf3597 100644 |
--- a/Source/modules/indexeddb/IDBDatabase.cpp |
+++ b/Source/modules/indexeddb/IDBDatabase.cpp |
@@ -51,14 +51,14 @@ namespace WebCore { |
DEFINE_GC_INFO(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->trace(m_backend); |
+ visitor->trace(m_databaseCallbacks); |
+} |
+ |
} // namespace WebCore |