Index: content/browser/indexed_db/indexed_db_database.cc |
diff --git a/content/browser/indexed_db/indexed_db_database.cc b/content/browser/indexed_db/indexed_db_database.cc |
index c25f47e32d7f26dc9a0ca196482eaeb4075f5369..10821c3c0b8c2f084a0a318e0468bdc57548cff8 100644 |
--- a/content/browser/indexed_db/indexed_db_database.cc |
+++ b/content/browser/indexed_db/indexed_db_database.cc |
@@ -118,6 +118,11 @@ class IndexedDBDatabase::OpenRequest |
: ConnectionRequest(db), pending_(std::move(pending_connection)) {} |
void Perform() override { |
+ if (!pending_->callbacks->IsValid()) { |
+ db_->RequestComplete(this); |
+ return; |
+ } |
+ |
if (db_->metadata_.id == kInvalidId) { |
// The database was deleted then immediately re-opened; OpenInternal() |
// recreates it in the backing store. |