Index: content/browser/renderer_host/render_process_host_impl.cc |
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc |
index a46af2af4ebfff4cbbf1e96d196e2a6108ce963e..b18417358e84d7ea76310f15600861241f0e0661 100644 |
--- a/content/browser/renderer_host/render_process_host_impl.cc |
+++ b/content/browser/renderer_host/render_process_host_impl.cc |
@@ -684,6 +684,11 @@ RenderProcessHostImpl::RenderProcessHostImpl( |
webrtc_eventlog_host_(id_), |
#endif |
permission_service_context_(new PermissionServiceContext(this)), |
+ indexed_db_factory_(new IndexedDBDispatcherHost( |
+ id_, |
+ storage_partition_impl_->GetURLRequestContext(), |
+ storage_partition_impl_->GetIndexedDBContext(), |
+ ChromeBlobStorageContext::GetFor(browser_context_))), |
channel_connected_(false), |
sent_render_process_ready_(false), |
#if defined(OS_ANDROID) |
@@ -1083,10 +1088,6 @@ void RenderProcessHostImpl::CreateMessageFilters() { |
AddFilter(new ClipboardMessageFilter(blob_storage_context)); |
AddFilter(new DOMStorageMessageFilter( |
storage_partition_impl_->GetDOMStorageContext())); |
- AddFilter(new IndexedDBDispatcherHost( |
- GetID(), storage_partition_impl_->GetURLRequestContext(), |
- storage_partition_impl_->GetIndexedDBContext(), |
- blob_storage_context.get())); |
#if BUILDFLAG(ENABLE_WEBRTC) |
peer_connection_tracker_host_ = new PeerConnectionTrackerHost( |
@@ -1195,6 +1196,9 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { |
base::Bind(&RenderProcessHostImpl::OnRouteProviderRequest, |
base::Unretained(this))); |
+ channel_->AddAssociatedInterfaceForIOThread( |
+ base::Bind(&IndexedDBDispatcherHost::AddBinding, indexed_db_factory_)); |
+ |
#if defined(OS_ANDROID) |
AddUIThreadInterface(registry.get(), |
GetGlobalJavaInterfaces() |