| Index: content/gpu/gpu_service_factory.cc
|
| diff --git a/content/gpu/gpu_service_factory.cc b/content/gpu/gpu_service_factory.cc
|
| index 50696ce42043bcee8ad5b7ef5b4f9b0ccec75eac..5625a63a5a6470bb0c0c94aafa936e5375adc0df 100644
|
| --- a/content/gpu/gpu_service_factory.cc
|
| +++ b/content/gpu/gpu_service_factory.cc
|
| @@ -4,22 +4,32 @@
|
|
|
| #include "content/gpu/gpu_service_factory.h"
|
|
|
| +#include <memory>
|
| +
|
| +#include "base/threading/thread_task_runner_handle.h"
|
| +
|
| #if defined(ENABLE_MOJO_MEDIA_IN_GPU_PROCESS)
|
| #include "base/bind.h"
|
| -#include "base/bind_helpers.h"
|
| #include "media/mojo/services/media_service_factory.h" // nogncheck
|
| #endif
|
|
|
| namespace content {
|
|
|
| -GpuServiceFactory::GpuServiceFactory() {}
|
| +GpuServiceFactory::GpuServiceFactory(
|
| + base::WeakPtr<media::MediaGpuChannelManager> media_gpu_channel_manager) {
|
| +#if defined(ENABLE_MOJO_MEDIA_IN_GPU_PROCESS)
|
| + task_runner_ = base::ThreadTaskRunnerHandle::Get();
|
| + media_gpu_channel_manager_ = std::move(media_gpu_channel_manager);
|
| +#endif
|
| +}
|
|
|
| GpuServiceFactory::~GpuServiceFactory() {}
|
|
|
| void GpuServiceFactory::RegisterServices(ServiceMap* services) {
|
| #if defined(ENABLE_MOJO_MEDIA_IN_GPU_PROCESS)
|
| ServiceInfo info;
|
| - info.factory = base::Bind(&media::CreateMediaService);
|
| + info.factory = base::Bind(&media::CreateGpuMediaService, task_runner_,
|
| + media_gpu_channel_manager_);
|
| info.use_own_thread = true;
|
| services->insert(std::make_pair("media", info));
|
| #endif
|
|
|