Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1877)

Unified Diff: content/child/indexed_db/webidbfactory_impl.cc

Issue 2642943002: Allow closing IndexedDB database before deleting (Closed)
Patch Set: Allow closing IndexedDB database before deleting Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/child/indexed_db/webidbfactory_impl.cc
diff --git a/content/child/indexed_db/webidbfactory_impl.cc b/content/child/indexed_db/webidbfactory_impl.cc
index 995069e49a3e0eec998408eef8fcc4148162fe89..494af2bd66683f63dd531d6a9bebcd77132c77d7 100644
--- a/content/child/indexed_db/webidbfactory_impl.cc
+++ b/content/child/indexed_db/webidbfactory_impl.cc
@@ -45,7 +45,8 @@ class WebIDBFactoryImpl::IOThreadHelper {
const url::Origin& origin);
void DeleteDatabase(const base::string16& name,
std::unique_ptr<IndexedDBCallbacksImpl> callbacks,
- const url::Origin& origin);
+ const url::Origin& origin,
+ bool force_close);
private:
scoped_refptr<IPC::SyncMessageFilter> sync_message_filter_;
@@ -96,7 +97,8 @@ void WebIDBFactoryImpl::open(const WebString& name,
void WebIDBFactoryImpl::deleteDatabase(const WebString& name,
WebIDBCallbacks* callbacks,
- const WebSecurityOrigin& origin) {
+ const WebSecurityOrigin& origin,
+ bool force_close) {
auto callbacks_impl = base::MakeUnique<IndexedDBCallbacksImpl>(
base::WrapUnique(callbacks), IndexedDBCallbacksImpl::kNoTransaction,
nullptr, io_runner_);
@@ -104,7 +106,7 @@ void WebIDBFactoryImpl::deleteDatabase(const WebString& name,
FROM_HERE,
base::Bind(&IOThreadHelper::DeleteDatabase, base::Unretained(io_helper_),
name.utf16(), base::Passed(&callbacks_impl),
- url::Origin(origin)));
+ url::Origin(origin), force_close));
}
WebIDBFactoryImpl::IOThreadHelper::IOThreadHelper(
@@ -162,9 +164,10 @@ void WebIDBFactoryImpl::IOThreadHelper::Open(
void WebIDBFactoryImpl::IOThreadHelper::DeleteDatabase(
const base::string16& name,
std::unique_ptr<IndexedDBCallbacksImpl> callbacks,
- const url::Origin& origin) {
+ const url::Origin& origin,
+ bool force_close) {
GetService()->DeleteDatabase(GetCallbacksProxy(std::move(callbacks)), origin,
- name);
+ name, force_close);
}
} // namespace content

Powered by Google App Engine
This is Rietveld 408576698