Index: content/browser/frame_host/render_frame_message_filter.cc |
diff --git a/content/browser/frame_host/render_frame_message_filter.cc b/content/browser/frame_host/render_frame_message_filter.cc |
index a4a91b09e4869065e1ba2ea995e6442ea2a7d189..22bdf086cd8a068b005fcc2063b8244910d147fd 100644 |
--- a/content/browser/frame_host/render_frame_message_filter.cc |
+++ b/content/browser/frame_host/render_frame_message_filter.cc |
@@ -466,9 +466,9 @@ void RenderFrameMessageFilter::SetCookie(int32_t render_frame_id, |
#if defined(ENABLE_PLUGINS) |
-void RenderFrameMessageFilter::OnGetPlugins( |
- bool refresh, |
- IPC::Message* reply_msg) { |
+void RenderFrameMessageFilter::OnGetPlugins(bool refresh, |
+ url::Origin main_frame_origin, |
+ IPC::Message* reply_msg) { |
// Don't refresh if the specified threshold has not been passed. Note that |
// this check is performed before off-loading to the file thread. The reason |
// we do this is that some pages tend to request that the list of plugins be |
@@ -486,12 +486,14 @@ void RenderFrameMessageFilter::OnGetPlugins( |
} |
} |
- PluginServiceImpl::GetInstance()->GetPlugins(base::Bind( |
- &RenderFrameMessageFilter::GetPluginsCallback, this, reply_msg)); |
+ PluginServiceImpl::GetInstance()->GetPlugins( |
+ base::Bind(&RenderFrameMessageFilter::GetPluginsCallback, this, reply_msg, |
+ main_frame_origin)); |
} |
void RenderFrameMessageFilter::GetPluginsCallback( |
IPC::Message* reply_msg, |
+ url::Origin main_frame_origin, |
const std::vector<WebPluginInfo>& all_plugins) { |
// Filter the plugin list. |
PluginServiceFilter* filter = PluginServiceImpl::GetInstance()->GetFilter(); |
@@ -502,12 +504,10 @@ void RenderFrameMessageFilter::GetPluginsCallback( |
// In this loop, copy the WebPluginInfo (and do not use a reference) because |
// the filter might mutate it. |
for (WebPluginInfo plugin : all_plugins) { |
- if (!filter || filter->IsPluginAvailable(child_process_id, |
- routing_id, |
- resource_context_, |
- GURL(), |
- GURL(), |
- &plugin)) { |
+ if (!filter || |
+ filter->IsPluginAvailable( |
alexmos
2016/08/02 22:06:27
Looking at IsPluginAvailable implementations, they
trizzofo
2016/08/03 00:08:37
Yes, we are working on it:
https://crrev.com/22084
|
+ child_process_id, routing_id, resource_context_, GURL(), |
+ GURL(main_frame_origin.Serialize()), &plugin)) { |
alexmos
2016/08/02 22:06:27
Is there a way to just use url::Origins in IsPlugi
trizzofo
2016/08/03 00:08:37
The only reason why we're using unique origins is
alexmos
2016/08/04 05:32:02
Ah, looking at your https://crrev.com/2208463002,
trizzofo
2016/08/05 02:04:25
Yes, I took a better look at url::Origin construct
|
plugins.push_back(plugin); |
} |
} |