| Index: content/browser/webui/web_ui_url_loader_factory.cc | 
| diff --git a/content/browser/webui/web_ui_url_loader_factory.cc b/content/browser/webui/web_ui_url_loader_factory.cc | 
| index 065ec3d4304a3991b4a1a6ab8914ed9ab08c342d..fd81d67f161adb79deff6fa5fde05ca5d5712b9b 100644 | 
| --- a/content/browser/webui/web_ui_url_loader_factory.cc | 
| +++ b/content/browser/webui/web_ui_url_loader_factory.cc | 
| @@ -11,6 +11,8 @@ | 
| #include "base/logging.h" | 
| #include "base/memory/ref_counted_memory.h" | 
| #include "base/strings/string_piece.h" | 
| +#include "content/browser/blob_storage/blob_internals_url_loader.h" | 
| +#include "content/browser/blob_storage/chrome_blob_storage_context.h" | 
| #include "content/browser/frame_host/frame_tree_node.h" | 
| #include "content/browser/frame_host/render_frame_host_impl.h" | 
| #include "content/browser/resource_context_impl.h" | 
| @@ -20,6 +22,7 @@ | 
| #include "content/public/browser/browser_thread.h" | 
| #include "content/public/browser/render_process_host.h" | 
| #include "content/public/browser/web_contents.h" | 
| +#include "content/public/common/url_constants.h" | 
| #include "mojo/public/cpp/bindings/binding_set.h" | 
| #include "third_party/zlib/google/compression_utils.h" | 
| #include "ui/base/template_expressions.h" | 
| @@ -217,10 +220,8 @@ class WebUIURLLoaderFactory : public mojom::URLLoaderFactory, | 
| public: | 
| WebUIURLLoaderFactory(FrameTreeNode* ftn) | 
| : frame_tree_node_id_(ftn->frame_tree_node_id()), | 
| -        resource_context_(ftn->current_frame_host() | 
| -                              ->GetProcess() | 
| -                              ->GetBrowserContext() | 
| -                              ->GetResourceContext()) { | 
| +        browser_context_( | 
| +            ftn->current_frame_host()->GetProcess()->GetBrowserContext()) { | 
| ftn->AddObserver(this); | 
| } | 
|  | 
| @@ -238,10 +239,21 @@ class WebUIURLLoaderFactory : public mojom::URLLoaderFactory, | 
| const ResourceRequest& request, | 
| mojom::URLLoaderClientPtr client) override { | 
| DCHECK_CURRENTLY_ON(BrowserThread::UI); | 
| +    if (request.url.host_piece() == kChromeUIBlobInternalsHost) { | 
| +      BrowserThread::PostTask( | 
| +          BrowserThread::IO, FROM_HERE, | 
| +          base::BindOnce( | 
| +              &StartBlobInternalsURLLoader, request, client.PassInterface(), | 
| +              base::Unretained( | 
| +                  ChromeBlobStorageContext::GetFor(browser_context_)))); | 
| +      return; | 
| +    } | 
| + | 
| BrowserThread::PostTask( | 
| BrowserThread::IO, FROM_HERE, | 
| base::BindOnce(&StartURLLoader, request, frame_tree_node_id_, | 
| -                       client.PassInterface(), resource_context_)); | 
| +                       client.PassInterface(), | 
| +                       browser_context_->GetResourceContext())); | 
| } | 
|  | 
| void SyncLoad(int32_t routing_id, | 
| @@ -258,7 +270,7 @@ class WebUIURLLoaderFactory : public mojom::URLLoaderFactory, | 
|  | 
| private: | 
| int frame_tree_node_id_; | 
| -  ResourceContext* resource_context_; | 
| +  BrowserContext* browser_context_; | 
| mojo::BindingSet<mojom::URLLoaderFactory> loader_factory_bindings_; | 
|  | 
| DISALLOW_COPY_AND_ASSIGN(WebUIURLLoaderFactory); | 
|  |