| Index: content/browser/plugin_service_impl.cc
|
| diff --git a/content/browser/plugin_service_impl.cc b/content/browser/plugin_service_impl.cc
|
| index b122ced087cd96b5cfbe97e9b7ea06edf1cdbcfc..4bdfa1d5455f05527cb858cd49ddec744f2eefdf 100644
|
| --- a/content/browser/plugin_service_impl.cc
|
| +++ b/content/browser/plugin_service_impl.cc
|
| @@ -6,6 +6,8 @@
|
|
|
| #include <stddef.h>
|
|
|
| +#include <utility>
|
| +
|
| #include "base/bind.h"
|
| #include "base/command_line.h"
|
| #include "base/compiler_specific.h"
|
| @@ -13,13 +15,12 @@
|
| #include "base/location.h"
|
| #include "base/logging.h"
|
| #include "base/metrics/histogram_macros.h"
|
| -#include "base/single_thread_task_runner.h"
|
| #include "base/strings/string_util.h"
|
| #include "base/strings/utf_string_conversions.h"
|
| #include "base/synchronization/waitable_event.h"
|
| +#include "base/task_runner_util.h"
|
| #include "base/task_scheduler/post_task.h"
|
| #include "base/threading/thread.h"
|
| -#include "base/threading/thread_task_runner_handle.h"
|
| #include "build/build_config.h"
|
| #include "content/browser/ppapi_plugin_process_host.h"
|
| #include "content/browser/renderer_host/render_process_host_impl.h"
|
| @@ -303,25 +304,14 @@ base::string16 PluginServiceImpl::GetPluginDisplayNameByPath(
|
| return plugin_name;
|
| }
|
|
|
| -void PluginServiceImpl::GetPlugins(const GetPluginsCallback& callback) {
|
| - scoped_refptr<base::SingleThreadTaskRunner> target_task_runner(
|
| - base::ThreadTaskRunnerHandle::Get());
|
| -
|
| - plugin_list_task_runner_->PostTask(
|
| - FROM_HERE,
|
| - base::Bind(&PluginServiceImpl::GetPluginsInternal, base::Unretained(this),
|
| - base::RetainedRef(target_task_runner), callback));
|
| -}
|
| -
|
| -void PluginServiceImpl::GetPluginsInternal(
|
| - base::SingleThreadTaskRunner* target_task_runner,
|
| - const PluginService::GetPluginsCallback& callback) {
|
| - DCHECK(plugin_list_sequence_checker_.CalledOnValidSequence());
|
| -
|
| - std::vector<WebPluginInfo> plugins;
|
| - PluginList::Singleton()->GetPlugins(&plugins);
|
| -
|
| - target_task_runner->PostTask(FROM_HERE, base::Bind(callback, plugins));
|
| +void PluginServiceImpl::GetPlugins(GetPluginsCallback callback) {
|
| + base::PostTaskAndReplyWithResult(
|
| + plugin_list_task_runner_.get(), FROM_HERE, base::BindOnce([]() {
|
| + std::vector<WebPluginInfo> plugins;
|
| + PluginList::Singleton()->GetPlugins(&plugins);
|
| + return plugins;
|
| + }),
|
| + std::move(callback));
|
| }
|
|
|
| void PluginServiceImpl::RegisterPepperPlugins() {
|
|
|