summaryrefslogtreecommitdiffstats
path: root/chrome/browser/plugin_process_host.h
diff options
context:
space:
mode:
authorevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-27 01:43:51 +0000
committerevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-27 01:43:51 +0000
commit3dfc7a41b5e87e3fb1b99836e26a8a62aa3efcfe (patch)
treea075d88642cf2ee3c0597b5569e1b5232254063d /chrome/browser/plugin_process_host.h
parent550c2e55ca73daff47dbcfffd1789c121064f093 (diff)
downloadchromium_src-3dfc7a41b5e87e3fb1b99836e26a8a62aa3efcfe.zip
chromium_src-3dfc7a41b5e87e3fb1b99836e26a8a62aa3efcfe.tar.gz
chromium_src-3dfc7a41b5e87e3fb1b99836e26a8a62aa3efcfe.tar.bz2
mac/linux: rework plugin channel file descriptor creation
This CL fixes a bug where the same renderer could open several channels to the same plugin process, which end up having the same name. This CL makes it that there is only one channel for each (plugin, renderer) pair, just like on Windows. The socketpair is created in the plugin process (which can ensure that only one channel per renderer gets created), and sends the renderer side through the browser process. Note: this should essentially be a noop on Windows. Review URL: http://codereview.chromium.org/149062 Patch from Antoine Labour <piman@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19448 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/plugin_process_host.h')
-rw-r--r--chrome/browser/plugin_process_host.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/chrome/browser/plugin_process_host.h b/chrome/browser/plugin_process_host.h
index 9a74dff..72a5d78 100644
--- a/chrome/browser/plugin_process_host.h
+++ b/chrome/browser/plugin_process_host.h
@@ -97,7 +97,7 @@ class PluginProcessHost : public ChildProcessHost,
const std::string& mime_type,
IPC::Message* reply_msg);
// Message handlers.
- void OnChannelCreated(const std::string& channel_name);
+ void OnChannelCreated(const IPC::ChannelHandle& channel_handle);
void OnGetPluginFinderUrl(std::string* plugin_finder_url);
void OnGetCookies(uint32 request_context, const GURL& url,
std::string* cookies);
@@ -114,15 +114,12 @@ class PluginProcessHost : public ChildProcessHost,
struct ChannelRequest {
ChannelRequest(ResourceMessageFilter* renderer_message_filter,
- const std::string& m, IPC::Message* r,
- int s) :
+ const std::string& m, IPC::Message* r) :
mime_type(m), reply_msg(r),
- renderer_message_filter_(renderer_message_filter),
- socket(s) { }
+ renderer_message_filter_(renderer_message_filter) { }
std::string mime_type;
IPC::Message* reply_msg;
scoped_refptr<ResourceMessageFilter> renderer_message_filter_;
- int socket;
};
// These are channel requests that we are waiting to send to the