| 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 b333139b180f6d8dcb5192eef27e44ed01e1fc18..8ba39939efba1b8250dd1329f21124e9938837a9 100644
|
| --- a/content/browser/renderer_host/render_process_host_impl.cc
|
| +++ b/content/browser/renderer_host/render_process_host_impl.cc
|
| @@ -899,10 +899,14 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
| base::Bind(&GetContexts, browser_context->GetResourceContext(),
|
| request_context, media_request_context));
|
|
|
| + // Several filters need the Blob storage context, so fetch it in advance.
|
| + scoped_refptr<ChromeBlobStorageContext> blob_storage_context =
|
| + ChromeBlobStorageContext::GetFor(browser_context);
|
| +
|
| ResourceMessageFilter* resource_message_filter = new ResourceMessageFilter(
|
| GetID(), PROCESS_TYPE_RENDERER,
|
| storage_partition_impl_->GetAppCacheService(),
|
| - ChromeBlobStorageContext::GetFor(browser_context),
|
| + blob_storage_context.get(),
|
| storage_partition_impl_->GetFileSystemContext(),
|
| storage_partition_impl_->GetServiceWorkerContext(),
|
| storage_partition_impl_->GetHostZoomLevelContext(),
|
| @@ -934,7 +938,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
| AddFilter(new IndexedDBDispatcherHost(
|
| GetID(), storage_partition_impl_->GetURLRequestContext(),
|
| storage_partition_impl_->GetIndexedDBContext(),
|
| - ChromeBlobStorageContext::GetFor(browser_context)));
|
| + blob_storage_context.get()));
|
|
|
| gpu_message_filter_ = new GpuMessageFilter(GetID());
|
| AddFilter(gpu_message_filter_);
|
| @@ -957,8 +961,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
| AddFilter(new FileAPIMessageFilter(
|
| GetID(), storage_partition_impl_->GetURLRequestContext(),
|
| storage_partition_impl_->GetFileSystemContext(),
|
| - ChromeBlobStorageContext::GetFor(browser_context),
|
| - StreamContext::GetFor(browser_context)));
|
| + blob_storage_context.get(), StreamContext::GetFor(browser_context)));
|
| AddFilter(new FileUtilitiesMessageFilter(GetID()));
|
| AddFilter(new MimeRegistryMessageFilter());
|
| AddFilter(
|
| @@ -986,8 +989,9 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
| base::Bind(&GetRequestContext, request_context, media_request_context,
|
| RESOURCE_TYPE_SUB_RESOURCE));
|
|
|
| - AddFilter(
|
| - new WebSocketDispatcherHost(GetID(), websocket_request_context_callback));
|
| + AddFilter(new WebSocketDispatcherHost(
|
| + GetID(), websocket_request_context_callback, blob_storage_context.get(),
|
| + storage_partition_impl_));
|
|
|
| message_port_message_filter_ = new MessagePortMessageFilter(
|
| base::Bind(&RenderWidgetHelper::GetNextRoutingID,
|
|
|