| Index: chrome/browser/ui/webui/chrome_url_data_manager_backend.cc
|
| diff --git a/chrome/browser/ui/webui/chrome_url_data_manager_backend.cc b/chrome/browser/ui/webui/chrome_url_data_manager_backend.cc
|
| index a2344d0e971406396d5377c0624584c154ff0371..10a0123018b5cc395a02ab5df26a1f1eb60ff72e 100644
|
| --- a/chrome/browser/ui/webui/chrome_url_data_manager_backend.cc
|
| +++ b/chrome/browser/ui/webui/chrome_url_data_manager_backend.cc
|
| @@ -19,6 +19,7 @@
|
| #include "chrome/common/chrome_paths.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "chrome/common/url_constants.h"
|
| +#include "content/browser/appcache/chrome_appcache_service.h"
|
| #include "content/browser/browser_thread.h"
|
| #include "googleurl/src/url_util.h"
|
| #include "grit/platform_locale_settings.h"
|
| @@ -227,8 +228,10 @@ bool IsViewAppCacheInternalsURL(const GURL& url) {
|
| class ChromeProtocolHandler
|
| : public net::URLRequestJobFactory::ProtocolHandler {
|
| public:
|
| - ChromeProtocolHandler(ChromeURLDataManagerBackend* backend,
|
| - ChromeAppCacheService* appcache_service);
|
| + ChromeProtocolHandler(
|
| + ChromeURLDataManagerBackend* backend,
|
| + ChromeAppCacheService* appcache_service,
|
| + webkit_blob::BlobStorageController* blob_storage_controller);
|
| ~ChromeProtocolHandler();
|
|
|
| virtual net::URLRequestJob* MaybeCreateJob(
|
| @@ -238,15 +241,18 @@ class ChromeProtocolHandler
|
| // These members are owned by ProfileIOData, which owns this ProtocolHandler.
|
| ChromeURLDataManagerBackend* const backend_;
|
| ChromeAppCacheService* const appcache_service_;
|
| + webkit_blob::BlobStorageController* const blob_storage_controller_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ChromeProtocolHandler);
|
| };
|
|
|
| ChromeProtocolHandler::ChromeProtocolHandler(
|
| ChromeURLDataManagerBackend* backend,
|
| - ChromeAppCacheService* appcache_service)
|
| + ChromeAppCacheService* appcache_service,
|
| + webkit_blob::BlobStorageController* blob_storage_controller)
|
| : backend_(backend),
|
| - appcache_service_(appcache_service) {}
|
| + appcache_service_(appcache_service),
|
| + blob_storage_controller_(blob_storage_controller) {}
|
|
|
| ChromeProtocolHandler::~ChromeProtocolHandler() {}
|
|
|
| @@ -265,7 +271,8 @@ net::URLRequestJob* ChromeProtocolHandler::MaybeCreateJob(
|
|
|
| // Next check for chrome://blob-internals/, which uses its own job type.
|
| if (ViewBlobInternalsJobFactory::IsSupportedURL(request->url()))
|
| - return ViewBlobInternalsJobFactory::CreateJobForRequest(request);
|
| + return ViewBlobInternalsJobFactory::CreateJobForRequest(
|
| + request, blob_storage_controller_);
|
|
|
| // Fall back to using a custom handler
|
| return new URLRequestChromeJob(request, backend_);
|
| @@ -290,10 +297,13 @@ ChromeURLDataManagerBackend::~ChromeURLDataManagerBackend() {
|
| net::URLRequestJobFactory::ProtocolHandler*
|
| ChromeURLDataManagerBackend::CreateProtocolHandler(
|
| ChromeURLDataManagerBackend* backend,
|
| - ChromeAppCacheService* appcache_service) {
|
| + ChromeAppCacheService* appcache_service,
|
| + webkit_blob::BlobStorageController* blob_storage_controller) {
|
| DCHECK(appcache_service);
|
| + DCHECK(blob_storage_controller);
|
| DCHECK(backend);
|
| - return new ChromeProtocolHandler(backend, appcache_service);
|
| + return new ChromeProtocolHandler(
|
| + backend, appcache_service, blob_storage_controller);
|
| }
|
|
|
| void ChromeURLDataManagerBackend::AddDataSource(
|
|
|