summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/page/plugin_data.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/page/plugin_data.cc')
-rw-r--r--chromium/third_party/blink/renderer/core/page/plugin_data.cc18
1 files changed, 12 insertions, 6 deletions
diff --git a/chromium/third_party/blink/renderer/core/page/plugin_data.cc b/chromium/third_party/blink/renderer/core/page/plugin_data.cc
index 89beb74dae8..c5f0d9c55c5 100644
--- a/chromium/third_party/blink/renderer/core/page/plugin_data.cc
+++ b/chromium/third_party/blink/renderer/core/page/plugin_data.cc
@@ -23,6 +23,7 @@
#include "third_party/blink/renderer/core/page/plugin_data.h"
+#include "base/metrics/histogram_macros.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "third_party/blink/public/common/thread_safe_browser_interface_broker_proxy.h"
#include "third_party/blink/public/mojom/plugins/plugin_registry.mojom-blink.h"
@@ -39,8 +40,12 @@ void MimeClassInfo::Trace(Visitor* visitor) const {
MimeClassInfo::MimeClassInfo(const String& type,
const String& description,
- PluginInfo& plugin)
- : type_(type), description_(description), plugin_(&plugin) {}
+ PluginInfo& plugin,
+ const Vector<String> extensions)
+ : type_(type),
+ description_(description),
+ extensions_(std::move(extensions)),
+ plugin_(&plugin) {}
void PluginInfo::Trace(Visitor* visitor) const {
visitor->Trace(mimes_);
@@ -95,6 +100,7 @@ void PluginData::RefreshBrowserSidePluginCache() {
}
void PluginData::UpdatePluginList(const SecurityOrigin* main_frame_origin) {
+ SCOPED_UMA_HISTOGRAM_TIMER("Blink.Plugin.UpdateTime");
ResetPluginData();
main_frame_origin_ = main_frame_origin;
@@ -105,14 +111,14 @@ void PluginData::UpdatePluginList(const SecurityOrigin* main_frame_origin) {
registry->GetPlugins(false, main_frame_origin_, &plugins);
for (const auto& plugin : plugins) {
auto* plugin_info = MakeGarbageCollected<PluginInfo>(
- plugin->name, FilePathToWebString(plugin->filename),
- plugin->description, plugin->background_color,
+ std::move(plugin->name), FilePathToWebString(plugin->filename),
+ std::move(plugin->description), plugin->background_color,
plugin->may_use_external_handler);
plugins_.push_back(plugin_info);
for (const auto& mime : plugin->mime_types) {
auto* mime_info = MakeGarbageCollected<MimeClassInfo>(
- mime->mime_type, mime->description, *plugin_info);
- mime_info->extensions_ = mime->file_extensions;
+ std::move(mime->mime_type), std::move(mime->description),
+ *plugin_info, std::move(mime->file_extensions));
plugin_info->AddMimeType(mime_info);
mimes_.push_back(mime_info);
}