diff options
author | jianli@chromium.org <jianli@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-24 20:36:46 +0000 |
---|---|---|
committer | jianli@chromium.org <jianli@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-24 20:36:46 +0000 |
commit | edbfcaa99df9fce2d0f246217b118ee3e58d1146 (patch) | |
tree | bd22bd7d7a2fa50fc1fc5063cb6bcb112a5cb497 | |
parent | 2250e2735b365e46112c0515cdaff4d338194e6f (diff) | |
download | chromium_src-edbfcaa99df9fce2d0f246217b118ee3e58d1146.zip chromium_src-edbfcaa99df9fce2d0f246217b118ee3e58d1146.tar.gz chromium_src-edbfcaa99df9fce2d0f246217b118ee3e58d1146.tar.bz2 |
Fix the problem that BlobDispatcherHost is not hooked up in WorkerProcessHost.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3472010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60513 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/worker_host/worker_process_host.cc | 10 | ||||
-rw-r--r-- | chrome/browser/worker_host/worker_process_host.h | 2 | ||||
-rw-r--r-- | chrome/common/webblobregistry_impl.cc | 1 | ||||
-rw-r--r-- | webkit/tools/test_shell/test_shell_webblobregistry_impl.cc | 1 |
4 files changed, 11 insertions, 3 deletions
diff --git a/chrome/browser/worker_host/worker_process_host.cc b/chrome/browser/worker_host/worker_process_host.cc index 1a9d167..32ce928 100644 --- a/chrome/browser/worker_host/worker_process_host.cc +++ b/chrome/browser/worker_host/worker_process_host.cc @@ -18,6 +18,7 @@ #include "chrome/browser/child_process_security_policy.h" #include "chrome/browser/net/chrome_url_request_context.h" #include "chrome/browser/profile.h" +#include "chrome/browser/renderer_host/blob_dispatcher_host.h" #include "chrome/browser/renderer_host/database_dispatcher_host.h" #include "chrome/browser/renderer_host/render_view_host.h" #include "chrome/browser/renderer_host/render_view_host_delegate.h" @@ -63,7 +64,10 @@ WorkerProcessHost::WorkerProcessHost( : BrowserChildProcessHost(WORKER_PROCESS, resource_dispatcher_host), request_context_(request_context), appcache_dispatcher_host_( - new AppCacheDispatcherHost(request_context)) { + new AppCacheDispatcherHost(request_context)), + ALLOW_THIS_IN_INITIALIZER_LIST(blob_dispatcher_host_( + new BlobDispatcherHost( + this->id(), request_context->blob_storage_context()))) { next_route_id_callback_.reset(NewCallbackWithReturnValue( WorkerService::GetInstance(), &WorkerService::next_worker_route_id)); db_dispatcher_host_ = new DatabaseDispatcherHost( @@ -76,6 +80,9 @@ WorkerProcessHost::~WorkerProcessHost() { // Shut down the database dispatcher host. db_dispatcher_host_->Shutdown(); + // Shut down the blob dispatcher host. + blob_dispatcher_host_->Shutdown(); + // Let interested observers know we are being deleted. NotificationService::current()->Notify( NotificationType::WORKER_PROCESS_HOST_SHUTDOWN, @@ -233,6 +240,7 @@ void WorkerProcessHost::OnMessageReceived(const IPC::Message& message) { bool handled = appcache_dispatcher_host_->OnMessageReceived(message, &msg_is_ok) || db_dispatcher_host_->OnMessageReceived(message, &msg_is_ok) || + blob_dispatcher_host_->OnMessageReceived(message, &msg_is_ok) || MessagePortDispatcher::GetInstance()->OnMessageReceived( message, this, next_route_id_callback_.get(), &msg_is_ok); diff --git a/chrome/browser/worker_host/worker_process_host.h b/chrome/browser/worker_host/worker_process_host.h index 7845c92..e009813 100644 --- a/chrome/browser/worker_host/worker_process_host.h +++ b/chrome/browser/worker_host/worker_process_host.h @@ -18,6 +18,7 @@ #include "ipc/ipc_channel.h" class AppCacheDispatcherHost; +class BlobDispatcherHost; class ChromeURLRequestContext; class ChromeURLRequestContextGetter; class DatabaseDispatcherHost; @@ -195,6 +196,7 @@ class WorkerProcessHost : public BrowserChildProcessHost { scoped_refptr<ChromeURLRequestContext> request_context_; scoped_ptr<AppCacheDispatcherHost> appcache_dispatcher_host_; scoped_refptr<DatabaseDispatcherHost> db_dispatcher_host_; + scoped_ptr<BlobDispatcherHost> blob_dispatcher_host_; // A callback to create a routing id for the associated worker process. scoped_ptr<CallbackWithReturnValue<int>::Type> next_route_id_callback_; diff --git a/chrome/common/webblobregistry_impl.cc b/chrome/common/webblobregistry_impl.cc index 90bfcbf..c28f168 100644 --- a/chrome/common/webblobregistry_impl.cc +++ b/chrome/common/webblobregistry_impl.cc @@ -7,7 +7,6 @@ #include "base/ref_counted.h" #include "chrome/common/render_messages.h" #include "third_party/WebKit/WebKit/chromium/public/WebBlobData.h" -#include "third_party/WebKit/WebKit/chromium/public/WebBlobStorageData.h" #include "third_party/WebKit/WebKit/chromium/public/WebString.h" #include "third_party/WebKit/WebKit/chromium/public/WebURL.h" #include "webkit/blob/blob_data.h" diff --git a/webkit/tools/test_shell/test_shell_webblobregistry_impl.cc b/webkit/tools/test_shell/test_shell_webblobregistry_impl.cc index a21a108..6a08252 100644 --- a/webkit/tools/test_shell/test_shell_webblobregistry_impl.cc +++ b/webkit/tools/test_shell/test_shell_webblobregistry_impl.cc @@ -7,7 +7,6 @@ #include "base/message_loop.h" #include "googleurl/src/gurl.h" #include "third_party/WebKit/WebKit/chromium/public/WebBlobData.h" -#include "third_party/WebKit/WebKit/chromium/public/WebBlobStorageData.h" #include "third_party/WebKit/WebKit/chromium/public/WebString.h" #include "third_party/WebKit/WebKit/chromium/public/WebURL.h" #include "webkit/blob/blob_data.h" |