summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-18 16:08:51 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-18 16:08:51 +0000
commit97e6c4c6081444371405bb39c99b016a65a309b8 (patch)
tree01d5b996990212964f7a91ca5315ff41134bd317
parenta15fcb778a2c7d4c188ddbf44edcca8b6a526e16 (diff)
downloadchromium_src-97e6c4c6081444371405bb39c99b016a65a309b8.zip
chromium_src-97e6c4c6081444371405bb39c99b016a65a309b8.tar.gz
chromium_src-97e6c4c6081444371405bb39c99b016a65a309b8.tar.bz2
Get rid of chrome dependencies from PluginProcessHost by moving dispatching of chrome specific messages to a chrome IPC filter.
Review URL: http://codereview.chromium.org/7036025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85767 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/chrome_content_browser_client.cc7
-rw-r--r--chrome/browser/chrome_content_browser_client.h1
-rw-r--r--chrome/browser/chrome_plugin_message_filter.cc63
-rw-r--r--chrome/browser/chrome_plugin_message_filter.h42
-rw-r--r--chrome/chrome_browser.gypi4
-rw-r--r--chrome/chrome_tests.gypi2
-rw-r--r--chrome/default_plugin/plugin_impl_win.cc34
-rw-r--r--content/browser/DEPS2
-rw-r--r--content/browser/content_browser_client.cc3
-rw-r--r--content/browser/content_browser_client.h6
-rw-r--r--content/browser/plugin_process_host.cc44
-rw-r--r--content/browser/plugin_process_host.h5
-rw-r--r--content/browser/renderer_host/browser_render_process_host.cc2
-rw-r--r--content/browser/resolve_proxy_msg_helper.cc (renamed from chrome/browser/net/resolve_proxy_msg_helper.cc)2
-rw-r--r--content/browser/resolve_proxy_msg_helper.h (renamed from chrome/browser/net/resolve_proxy_msg_helper.h)6
-rw-r--r--content/browser/resolve_proxy_msg_helper_unittest.cc (renamed from chrome/browser/net/resolve_proxy_msg_helper_unittest.cc)2
-rw-r--r--content/common/plugin_messages.h8
-rw-r--r--content/content_browser.gypi2
18 files changed, 145 insertions, 90 deletions
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
index 9fe58e9..5030768 100644
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -8,6 +8,7 @@
#include "chrome/app/breakpad_mac.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/character_encoding.h"
+#include "chrome/browser/chrome_plugin_message_filter.h"
#include "chrome/browser/chrome_worker_message_filter.h"
#include "chrome/browser/content_settings/host_content_settings_map.h"
#include "chrome/browser/content_settings/tab_specific_content_settings.h"
@@ -33,6 +34,7 @@
#include "chrome/common/url_constants.h"
#include "content/browser/browsing_instance.h"
#include "content/browser/child_process_security_policy.h"
+#include "content/browser/plugin_process_host.h"
#include "content/browser/renderer_host/browser_render_process_host.h"
#include "content/browser/renderer_host/render_view_host.h"
#include "content/browser/resource_context.h"
@@ -135,6 +137,11 @@ void ChromeContentBrowserClient::BrowserRenderProcessHostCreated(
#endif
}
+void ChromeContentBrowserClient::PluginProcessHostCreated(
+ PluginProcessHost* host) {
+ host->AddFilter(new ChromePluginMessageFilter(host));
+}
+
void ChromeContentBrowserClient::WorkerProcessHostCreated(
WorkerProcessHost* host) {
host->AddFilter(new ChromeWorkerMessageFilter(host));
diff --git a/chrome/browser/chrome_content_browser_client.h b/chrome/browser/chrome_content_browser_client.h
index 2ba3e24..3a96dc2 100644
--- a/chrome/browser/chrome_content_browser_client.h
+++ b/chrome/browser/chrome_content_browser_client.h
@@ -14,6 +14,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
public:
virtual void RenderViewHostCreated(RenderViewHost* render_view_host);
virtual void BrowserRenderProcessHostCreated(BrowserRenderProcessHost* host);
+ virtual void PluginProcessHostCreated(PluginProcessHost* host);
virtual void WorkerProcessHostCreated(WorkerProcessHost* host);
virtual content::WebUIFactory* GetWebUIFactory();
virtual GURL GetEffectiveURL(Profile* profile, const GURL& url);
diff --git a/chrome/browser/chrome_plugin_message_filter.cc b/chrome/browser/chrome_plugin_message_filter.cc
new file mode 100644
index 0000000..8bea04b
--- /dev/null
+++ b/chrome/browser/chrome_plugin_message_filter.cc
@@ -0,0 +1,63 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/chrome_plugin_message_filter.h"
+
+#include "chrome/browser/browser_process.h"
+#include "chrome/browser/plugin_download_helper.h"
+#include "chrome/browser/profiles/profile.h"
+#include "content/browser/plugin_process_host.h"
+#include "content/common/plugin_messages.h"
+#include "net/url_request/url_request_context_getter.h"
+
+static const char kDefaultPluginFinderURL[] =
+ "https://dl-ssl.google.com/edgedl/chrome/plugins/plugins2.xml";
+
+ChromePluginMessageFilter::ChromePluginMessageFilter(PluginProcessHost* process)
+ : process_(process) {
+}
+
+ChromePluginMessageFilter::~ChromePluginMessageFilter() {
+}
+
+bool ChromePluginMessageFilter::OnMessageReceived(const IPC::Message& message) {
+ bool handled = true;
+ IPC_BEGIN_MESSAGE_MAP(ChromePluginMessageFilter, message)
+#if defined(OS_WIN)
+ IPC_MESSAGE_HANDLER(PluginProcessHostMsg_DownloadUrl, OnDownloadUrl)
+#endif
+ IPC_MESSAGE_HANDLER(PluginProcessHostMsg_GetPluginFinderUrl,
+ OnGetPluginFinderUrl)
+ IPC_MESSAGE_UNHANDLED(handled = false)
+ IPC_END_MESSAGE_MAP()
+
+ return handled;
+}
+
+bool ChromePluginMessageFilter::Send(IPC::Message* message) {
+ return process_->Send(message);
+}
+
+#if defined(OS_WIN)
+void ChromePluginMessageFilter::OnDownloadUrl(const std::string& url,
+ int source_pid,
+ gfx::NativeWindow caller_window) {
+ PluginDownloadUrlHelper* download_url_helper =
+ new PluginDownloadUrlHelper(url, source_pid, caller_window, NULL);
+ download_url_helper->InitiateDownload(
+ Profile::GetDefaultRequestContext()->GetURLRequestContext());
+}
+#endif
+
+void ChromePluginMessageFilter::OnGetPluginFinderUrl(
+ std::string* plugin_finder_url) {
+ // TODO(bauerb): Move this method to MessageFilter.
+ if (!g_browser_process->plugin_finder_disabled()) {
+ // TODO(iyengar): Add the plumbing to retrieve the default
+ // plugin finder URL.
+ *plugin_finder_url = kDefaultPluginFinderURL;
+ } else {
+ plugin_finder_url->clear();
+ }
+}
diff --git a/chrome/browser/chrome_plugin_message_filter.h b/chrome/browser/chrome_plugin_message_filter.h
new file mode 100644
index 0000000..fc02479
--- /dev/null
+++ b/chrome/browser/chrome_plugin_message_filter.h
@@ -0,0 +1,42 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_CHROME_PLUGIN_MESSAGE_FILTER_H_
+#define CHROME_BROWSER_CHROME_PLUGIN_MESSAGE_FILTER_H_
+#pragma once
+
+#include "ipc/ipc_channel_proxy.h"
+#include "ui/gfx/native_widget_types.h"
+
+class PluginProcessHost;
+
+// This class filters out incoming Chrome-specific IPC messages for the plugin
+// process on the IPC thread.
+class ChromePluginMessageFilter : public IPC::ChannelProxy::MessageFilter,
+ public IPC::Message::Sender {
+ public:
+ explicit ChromePluginMessageFilter(PluginProcessHost* process);
+
+ // BrowserMessageFilter methods:
+ virtual bool OnMessageReceived(const IPC::Message& message);
+
+ // IPC::Message::Sender methods:
+ virtual bool Send(IPC::Message* message);
+
+ private:
+ virtual ~ChromePluginMessageFilter();
+
+#if defined(OS_WIN)
+ void OnDownloadUrl(const std::string& url,
+ int source_child_unique_id,
+ gfx::NativeWindow caller_window);
+#endif
+ void OnGetPluginFinderUrl(std::string* plugin_finder_url);
+
+ PluginProcessHost* process_;
+
+ DISALLOW_COPY_AND_ASSIGN(ChromePluginMessageFilter);
+};
+
+#endif // CHROME_BROWSER_CHROME_PLUGIN_MESSAGE_FILTER_H_
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi
index 4803e70..ee5baa0 100644
--- a/chrome/chrome_browser.gypi
+++ b/chrome/chrome_browser.gypi
@@ -348,6 +348,8 @@
'browser/chrome_browser_application_mac.mm',
'browser/chrome_content_browser_client.cc',
'browser/chrome_content_browser_client.h',
+ 'browser/chrome_plugin_message_filter.cc',
+ 'browser/chrome_plugin_message_filter.h',
'browser/chrome_worker_message_filter.cc',
'browser/chrome_worker_message_filter.h',
'browser/chromeos/audio_handler.cc',
@@ -1364,8 +1366,6 @@
'browser/net/quoted_printable.h',
'browser/net/referrer.cc',
'browser/net/referrer.h',
- 'browser/net/resolve_proxy_msg_helper.cc',
- 'browser/net/resolve_proxy_msg_helper.h',
'browser/net/sdch_dictionary_fetcher.cc',
'browser/net/sdch_dictionary_fetcher.h',
'browser/net/service_providers_win.cc',
diff --git a/chrome/chrome_tests.gypi b/chrome/chrome_tests.gypi
index d3b1927..5a9b487 100644
--- a/chrome/chrome_tests.gypi
+++ b/chrome/chrome_tests.gypi
@@ -1435,7 +1435,6 @@
'browser/net/predictor_unittest.cc',
'browser/net/pref_proxy_config_service_unittest.cc',
'browser/net/quoted_printable_unittest.cc',
- 'browser/net/resolve_proxy_msg_helper_unittest.cc',
'browser/net/sqlite_persistent_cookie_store_unittest.cc',
'browser/net/url_fixer_upper_unittest.cc',
'browser/net/url_info_unittest.cc',
@@ -1928,6 +1927,7 @@
'../content/browser/renderer_host/render_widget_host_unittest.cc',
'../content/browser/renderer_host/resource_dispatcher_host_unittest.cc',
'../content/browser/renderer_host/resource_queue_unittest.cc',
+ '../content/browser/resolve_proxy_msg_helper_unittest.cc',
'../content/browser/site_instance_unittest.cc',
'../content/browser/speech/endpointer/endpointer_unittest.cc',
'../content/browser/speech/speech_recognition_request_unittest.cc',
diff --git a/chrome/default_plugin/plugin_impl_win.cc b/chrome/default_plugin/plugin_impl_win.cc
index 8a2f3e3..cec0063 100644
--- a/chrome/default_plugin/plugin_impl_win.cc
+++ b/chrome/default_plugin/plugin_impl_win.cc
@@ -22,30 +22,6 @@
static const int TOOLTIP_MAX_WIDTH = 500;
-namespace {
-
-bool GetPluginFinderURL(std::string* plugin_finder_url) {
- if (!plugin_finder_url) {
- NOTREACHED();
- return false;
- }
-
- ChildThread::current()->Send(
- new PluginProcessHostMsg_GetPluginFinderUrl(plugin_finder_url));
- // If we get an empty string back this means the plugin finder has been
- // disabled.
- return true;
-}
-
-bool DownloadUrl(const std::string& url, HWND caller_window) {
- return ChildThread::current()->Send(
- new PluginProcessHostMsg_DownloadUrl(MSG_ROUTING_NONE, url,
- ::GetCurrentProcessId(),
- caller_window));
-}
-
-}
-
PluginInstallerImpl::PluginInstallerImpl(int16 mode)
: instance_(NULL),
mode_(mode),
@@ -94,11 +70,8 @@ bool PluginInstallerImpl::Initialize(HINSTANCE module_handle, NPP instance,
instance_ = instance;
mime_type_ = mime_type;
- if (!GetPluginFinderURL(&plugin_finder_url_)) {
- NOTREACHED() << __FUNCTION__ << " Failed to get the plugin finder URL";
- return false;
- }
-
+ ChildThread::current()->Send(
+ new PluginProcessHostMsg_GetPluginFinderUrl(&plugin_finder_url_));
if (plugin_finder_url_.empty())
disable_plugin_finder_ = true;
@@ -368,7 +341,8 @@ void PluginInstallerImpl::DownloadPlugin() {
DisplayStatus(IDS_DEFAULT_PLUGIN_DOWNLOADING_PLUGIN_MSG);
if (!plugin_download_url_for_display_) {
- DownloadUrl(plugin_download_url_, hwnd());
+ ChildThread::current()->Send(new PluginProcessHostMsg_DownloadUrl(
+ plugin_download_url_, ::GetCurrentProcessId(), hwnd()));
} else {
default_plugin::g_browser->geturl(instance(),
plugin_download_url_.c_str(),
diff --git a/content/browser/DEPS b/content/browser/DEPS
index 41ae24c..437eb28 100644
--- a/content/browser/DEPS
+++ b/content/browser/DEPS
@@ -46,7 +46,6 @@ include_rules = [
"+chrome/browser/net/load_timing_observer.h",
"+chrome/browser/net/predictor_api.h",
- "+chrome/browser/net/resolve_proxy_msg_helper.h",
"+chrome/browser/net/url_request_tracking.h",
"+chrome/browser/notifications/desktop_notification_service.h",
@@ -55,7 +54,6 @@ include_rules = [
"+chrome/browser/platform_util.h",
- "+chrome/browser/plugin_download_helper.h",
"+chrome/browser/plugin_observer.h",
"+chrome/common/default_plugin.h",
diff --git a/content/browser/content_browser_client.cc b/content/browser/content_browser_client.cc
index 901097e..47d55e4 100644
--- a/content/browser/content_browser_client.cc
+++ b/content/browser/content_browser_client.cc
@@ -18,6 +18,9 @@ void ContentBrowserClient::BrowserRenderProcessHostCreated(
BrowserRenderProcessHost* host) {
}
+void ContentBrowserClient::PluginProcessHostCreated(PluginProcessHost* host) {
+}
+
void ContentBrowserClient::WorkerProcessHostCreated(WorkerProcessHost* host) {
}
diff --git a/content/browser/content_browser_client.h b/content/browser/content_browser_client.h
index 6395d9a..70932b6 100644
--- a/content/browser/content_browser_client.h
+++ b/content/browser/content_browser_client.h
@@ -13,6 +13,7 @@
class BrowserRenderProcessHost;
class CommandLine;
class GURL;
+class PluginProcessHost;
class Profile;
class RenderViewHost;
class TabContents;
@@ -39,6 +40,11 @@ class ContentBrowserClient {
// embedder's IPC filters have priority.
virtual void BrowserRenderProcessHostCreated(BrowserRenderProcessHost* host);
+ // Notifies that a PluginProcessHost has been created. This is called
+ // before the content layer adds its own message filters, so that the
+ // embedder's IPC filters have priority.
+ virtual void PluginProcessHostCreated(PluginProcessHost* host);
+
// Notifies that a WorkerProcessHost has been created. This is called
// before the content layer adds its own message filters, so that the
// embedder's IPC filters have priority.
diff --git a/content/browser/plugin_process_host.cc b/content/browser/plugin_process_host.cc
index a543200..2e72f31 100644
--- a/content/browser/plugin_process_host.cc
+++ b/content/browser/plugin_process_host.cc
@@ -19,26 +19,18 @@
#include "base/path_service.h"
#include "base/string_util.h"
#include "base/utf_string_conversions.h"
-#include "chrome/browser/browser_process.h"
-#include "chrome/browser/net/resolve_proxy_msg_helper.h"
-#include "chrome/browser/net/url_request_tracking.h"
-#include "chrome/browser/plugin_download_helper.h"
-#include "chrome/browser/profiles/profile.h"
#include "chrome/common/chrome_paths.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/logging_chrome.h"
-#include "chrome/common/render_messages.h"
#include "content/browser/browser_thread.h"
+#include "content/browser/content_browser_client.h"
+#include "content/browser/resolve_proxy_msg_helper.h"
#include "content/browser/plugin_service.h"
#include "content/browser/renderer_host/resource_dispatcher_host.h"
#include "content/browser/renderer_host/resource_message_filter.h"
#include "content/common/plugin_messages.h"
#include "content/common/resource_messages.h"
#include "ipc/ipc_switches.h"
-#include "net/base/io_buffer.h"
-#include "net/url_request/url_request.h"
-#include "net/url_request/url_request_context.h"
-#include "net/url_request/url_request_context_getter.h"
#include "ui/base/ui_base_switches.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/gfx/gl/gl_switches.h"
@@ -53,9 +45,6 @@
#include "ui/gfx/rect.h"
#endif
-static const char kDefaultPluginFinderURL[] =
- "https://dl-ssl.google.com/edgedl/chrome/plugins/plugins2.xml";
-
#if defined(OS_WIN)
void PluginProcessHost::OnPluginWindowDestroyed(HWND window, HWND parent) {
// The window is destroyed at this point, we just care about its parent, which
@@ -69,15 +58,6 @@ void PluginProcessHost::OnPluginWindowDestroyed(HWND window, HWND parent) {
PostMessage(parent, WM_CLOSE, 0, 0);
}
-void PluginProcessHost::OnDownloadUrl(const std::string& url,
- int source_pid,
- gfx::NativeWindow caller_window) {
- PluginDownloadUrlHelper* download_url_helper =
- new PluginDownloadUrlHelper(url, source_pid, caller_window, NULL);
- download_url_helper->InitiateDownload(
- Profile::GetDefaultRequestContext()->GetURLRequestContext());
-}
-
void PluginProcessHost::AddWindow(HWND window) {
plugin_parent_windows_set_.insert(window);
}
@@ -241,6 +221,7 @@ bool PluginProcessHost::Init(const webkit::npapi::WebPluginInfo& info,
#endif
cmd_line);
+ content::GetContentClient()->browser()->PluginProcessHostCreated(this);
AddFilter(new ResolveProxyMsgHelper(NULL));
return true;
@@ -256,12 +237,9 @@ bool PluginProcessHost::OnMessageReceived(const IPC::Message& msg) {
bool handled = true;
IPC_BEGIN_MESSAGE_MAP(PluginProcessHost, msg)
IPC_MESSAGE_HANDLER(PluginProcessHostMsg_ChannelCreated, OnChannelCreated)
- IPC_MESSAGE_HANDLER(PluginProcessHostMsg_GetPluginFinderUrl,
- OnGetPluginFinderUrl)
#if defined(OS_WIN)
IPC_MESSAGE_HANDLER(PluginProcessHostMsg_PluginWindowDestroyed,
OnPluginWindowDestroyed)
- IPC_MESSAGE_HANDLER(PluginProcessHostMsg_DownloadUrl, OnDownloadUrl)
#endif
#if defined(TOOLKIT_USES_GTK)
IPC_MESSAGE_HANDLER(PluginProcessHostMsg_MapNativeViewId,
@@ -350,19 +328,3 @@ void PluginProcessHost::OnChannelCreated(
client->OnChannelOpened(channel_handle);
sent_requests_.pop();
}
-
-void PluginProcessHost::OnGetPluginFinderUrl(std::string* plugin_finder_url) {
- // TODO(bauerb): Move this method to MessageFilter.
- if (!plugin_finder_url) {
- NOTREACHED();
- return;
- }
-
- if (!g_browser_process->plugin_finder_disabled()) {
- // TODO(iyengar): Add the plumbing to retrieve the default
- // plugin finder URL.
- *plugin_finder_url = kDefaultPluginFinderURL;
- } else {
- plugin_finder_url->clear();
- }
-}
diff --git a/content/browser/plugin_process_host.h b/content/browser/plugin_process_host.h
index 68cd738..f33027d 100644
--- a/content/browser/plugin_process_host.h
+++ b/content/browser/plugin_process_host.h
@@ -16,8 +16,8 @@
#include "base/basictypes.h"
#include "base/memory/ref_counted.h"
#include "content/browser/browser_child_process_host.h"
-#include "ui/gfx/native_widget_types.h"
#include "webkit/plugins/npapi/webplugininfo.h"
+#include "ui/gfx/native_widget_types.h"
namespace gfx {
class Rect;
@@ -99,12 +99,9 @@ class PluginProcessHost : public BrowserChildProcessHost {
// Message handlers.
void OnChannelCreated(const IPC::ChannelHandle& channel_handle);
- void OnGetPluginFinderUrl(std::string* plugin_finder_url);
#if defined(OS_WIN)
void OnPluginWindowDestroyed(HWND window, HWND parent);
- void OnDownloadUrl(const std::string& url, int source_child_unique_id,
- gfx::NativeWindow caller_window);
#endif
#if defined(USE_X11)
diff --git a/content/browser/renderer_host/browser_render_process_host.cc b/content/browser/renderer_host/browser_render_process_host.cc
index ef8d040..282ef9a 100644
--- a/content/browser/renderer_host/browser_render_process_host.cc
+++ b/content/browser/renderer_host/browser_render_process_host.cc
@@ -28,7 +28,6 @@
#include "base/threading/thread_restrictions.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/history/history.h"
-#include "chrome/browser/net/resolve_proxy_msg_helper.h"
#include "chrome/browser/platform_util.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/renderer_host/web_cache_manager.h"
@@ -48,6 +47,7 @@
#include "content/browser/in_process_webkit/indexed_db_dispatcher_host.h"
#include "content/browser/file_system/file_system_dispatcher_host.h"
#include "content/browser/mime_registry_message_filter.h"
+#include "content/browser/resolve_proxy_msg_helper.h"
#include "content/browser/plugin_service.h"
#include "content/browser/renderer_host/audio_input_renderer_host.h"
#include "content/browser/renderer_host/audio_renderer_host.h"
diff --git a/chrome/browser/net/resolve_proxy_msg_helper.cc b/content/browser/resolve_proxy_msg_helper.cc
index 49ce3e4..edacad9 100644
--- a/chrome/browser/net/resolve_proxy_msg_helper.cc
+++ b/content/browser/resolve_proxy_msg_helper.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/net/resolve_proxy_msg_helper.h"
+#include "content/browser/resolve_proxy_msg_helper.h"
#include "base/compiler_specific.h"
#include "chrome/browser/profiles/profile.h"
diff --git a/chrome/browser/net/resolve_proxy_msg_helper.h b/content/browser/resolve_proxy_msg_helper.h
index 95ebaf9..5032687 100644
--- a/chrome/browser/net/resolve_proxy_msg_helper.h
+++ b/content/browser/resolve_proxy_msg_helper.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_BROWSER_NET_RESOLVE_PROXY_MSG_HELPER_H_
-#define CHROME_BROWSER_NET_RESOLVE_PROXY_MSG_HELPER_H_
+#ifndef CONTENT_BROWSER_RESOLVE_PROXY_MSG_HELPER_H_
+#define CONTENT_BROWSER_RESOLVE_PROXY_MSG_HELPER_H_
#pragma once
#include <deque>
@@ -82,4 +82,4 @@ class ResolveProxyMsgHelper : public BrowserMessageFilter {
net::ProxyService* proxy_service_override_;
};
-#endif // CHROME_BROWSER_NET_RESOLVE_PROXY_MSG_HELPER_H_
+#endif // CONTENT_BROWSER_RESOLVE_PROXY_MSG_HELPER_H_
diff --git a/chrome/browser/net/resolve_proxy_msg_helper_unittest.cc b/content/browser/resolve_proxy_msg_helper_unittest.cc
index a32ab78..763736c 100644
--- a/chrome/browser/net/resolve_proxy_msg_helper_unittest.cc
+++ b/content/browser/resolve_proxy_msg_helper_unittest.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/net/resolve_proxy_msg_helper.h"
+#include "content/browser/resolve_proxy_msg_helper.h"
#include "content/common/child_process_messages.h"
#include "ipc/ipc_test_sink.h"
diff --git a/content/common/plugin_messages.h b/content/common/plugin_messages.h
index 813d8bb..d34e0d1 100644
--- a/content/common/plugin_messages.h
+++ b/content/common/plugin_messages.h
@@ -98,10 +98,10 @@ IPC_MESSAGE_CONTROL2(PluginProcessHostMsg_PluginWindowDestroyed,
HWND /* window */,
HWND /* parent */)
-IPC_MESSAGE_ROUTED3(PluginProcessHostMsg_DownloadUrl,
- std::string /* URL */,
- int /* process id */,
- HWND /* caller window */)
+IPC_MESSAGE_CONTROL3(PluginProcessHostMsg_DownloadUrl,
+ std::string /* URL */,
+ int /* process id */,
+ HWND /* caller window */)
#endif
#if defined(USE_X11)
diff --git a/content/content_browser.gypi b/content/content_browser.gypi
index 6ba0c08..0b26790 100644
--- a/content/content_browser.gypi
+++ b/content/content_browser.gypi
@@ -272,6 +272,8 @@
'browser/renderer_host/sync_resource_handler.h',
'browser/renderer_host/x509_user_cert_resource_handler.cc',
'browser/renderer_host/x509_user_cert_resource_handler.h',
+ 'browser/resolve_proxy_msg_helper.cc',
+ 'browser/resolve_proxy_msg_helper.h',
'browser/resource_context.cc',
'browser/resource_context.h',
'browser/site_instance.cc',