Index: third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp |
diff --git a/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp b/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp |
index c09ae09a4f2a40de11afeeb11014ddae9cdefba8..5881936310d62131e193c58412ecda1c162522f5 100644 |
--- a/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp |
+++ b/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp |
@@ -364,6 +364,9 @@ void IDBDatabase::closeConnection() |
m_backend.reset(); |
} |
+ if (m_databaseCallbacks) |
+ m_databaseCallbacks->detachWebCallbacks(); |
+ |
if (m_contextStopped || !getExecutionContext()) |
return; |
@@ -462,6 +465,9 @@ void IDBDatabase::stop() |
m_backend->close(); |
m_backend.reset(); |
} |
+ |
+ if (m_databaseCallbacks) |
+ m_databaseCallbacks->detachWebCallbacks(); |
} |
const AtomicString& IDBDatabase::interfaceName() const |