Chromium Code Reviews| Index: media/renderers/default_renderer_factory.cc |
| diff --git a/media/renderers/default_renderer_factory.cc b/media/renderers/default_renderer_factory.cc |
| index 5ccfb7b87d51c0c4fb18ad3314507affe7050ae5..8a6f375dcabf2278c9565ea8bdc8923073149fbb 100644 |
| --- a/media/renderers/default_renderer_factory.cc |
| +++ b/media/renderers/default_renderer_factory.cc |
| @@ -104,7 +104,11 @@ std::unique_ptr<Renderer> DefaultRendererFactory::CreateRenderer( |
| std::unique_ptr<AudioRenderer> audio_renderer(new AudioRendererImpl( |
| media_task_runner, audio_renderer_sink, |
| - CreateAudioDecoders(media_task_runner), media_log_)); |
| + // Unretained is safe, since RendererFactory is owned by WMPI, which also |
| + // owns RendererImpl and thus AudioRendererImpl. |
|
xhwang
2017/03/22 22:31:12
Checked WMPI, |renderer_factory_| will be destroye
servolk
2017/03/23 17:08:10
Done.
|
| + base::Bind(&DefaultRendererFactory::CreateAudioDecoders, |
| + base::Unretained(this), media_task_runner), |
| + media_log_)); |
| GpuVideoAcceleratorFactories* gpu_factories = nullptr; |
| if (!get_gpu_factories_cb_.is_null()) |
| @@ -112,7 +116,11 @@ std::unique_ptr<Renderer> DefaultRendererFactory::CreateRenderer( |
| std::unique_ptr<VideoRenderer> video_renderer(new VideoRendererImpl( |
| media_task_runner, worker_task_runner, video_renderer_sink, |
| - CreateVideoDecoders(media_task_runner, request_surface_cb, gpu_factories), |
| + // Unretained is safe, since RendererFactory is owned by WMPI, which also |
| + // owns RendererImpl and thus VideoRendererImpl. |
| + base::Bind(&DefaultRendererFactory::CreateVideoDecoders, |
| + base::Unretained(this), media_task_runner, request_surface_cb, |
| + gpu_factories), |
| true, gpu_factories, media_log_)); |
| return base::MakeUnique<RendererImpl>( |