Index: content/browser/plugin_service_impl.cc |
diff --git a/content/browser/plugin_service_impl.cc b/content/browser/plugin_service_impl.cc |
index 789d254d9d7ee0af8f02870fe75367c730ba6295..d4d9871cc62eb5bd0e413c7d70c0d597f4a6358e 100644 |
--- a/content/browser/plugin_service_impl.cc |
+++ b/content/browser/plugin_service_impl.cc |
@@ -347,7 +347,7 @@ void PluginServiceImpl::OpenChannelToPpapiPlugin( |
if (plugin_host) |
plugin_host->OpenChannelToPlugin(client); |
else // Send error. |
- client->OnChannelOpened(base::kNullProcessHandle, IPC::ChannelHandle()); |
+ client->OnChannelOpened(base::kNullProcessHandle, IPC::ChannelHandle(), 0); |
} |
void PluginServiceImpl::OpenChannelToPpapiBroker( |
@@ -357,7 +357,7 @@ void PluginServiceImpl::OpenChannelToPpapiBroker( |
if (plugin_host) |
plugin_host->OpenChannelToPlugin(client); |
else // Send error. |
- client->OnChannelOpened(base::kNullProcessHandle, IPC::ChannelHandle()); |
+ client->OnChannelOpened(base::kNullProcessHandle, IPC::ChannelHandle(), 0); |
} |
void PluginServiceImpl::CancelOpenChannelToNpapiPlugin( |
@@ -484,6 +484,23 @@ bool PluginServiceImpl::GetPluginInfoByPath(const FilePath& plugin_path, |
return false; |
} |
+string16 PluginServiceImpl::GetPluginDisplayNameByPath(const FilePath& path) { |
+ string16 plugin_name = path.LossyDisplayName(); |
+ webkit::WebPluginInfo info; |
+ if (PluginService::GetInstance()->GetPluginInfoByPath(path, &info) && |
+ !info.name.empty()) { |
+ plugin_name = info.name; |
+#if defined(OS_MACOSX) |
+ // Many plugins on the Mac have .plugin in the actual name, which looks |
+ // terrible, so look for that and strip it off if present. |
+ const std::string kPluginExtension = ".plugin"; |
+ if (EndsWith(plugin_name, ASCIIToUTF16(kPluginExtension), true)) |
+ plugin_name.erase(plugin_name.length() - kPluginExtension.length()); |
+#endif // OS_MACOSX |
+ } |
+ return plugin_name; |
+} |
+ |
void PluginServiceImpl::GetPlugins(const GetPluginsCallback& callback) { |
scoped_refptr<base::MessageLoopProxy> target_loop( |
MessageLoop::current()->message_loop_proxy()); |