| Index: content/renderer/render_thread_impl.cc
|
| diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
|
| index 266276e18f14dd912364ca7830ce100e61fa4bd6..b567cc989dfb327b289cc19479e762b7a43e96e5 100644
|
| --- a/content/renderer/render_thread_impl.cc
|
| +++ b/content/renderer/render_thread_impl.cc
|
| @@ -871,6 +871,8 @@ RenderThreadImpl::GetGpuFactories() {
|
| scoped_refptr<GpuChannelHost> gpu_channel_host = GetGpuChannel();
|
| const CommandLine* cmd_line = CommandLine::ForCurrentProcess();
|
| scoped_refptr<RendererGpuVideoAcceleratorFactories> gpu_factories;
|
| + scoped_refptr<base::MessageLoopProxy> media_loop_proxy =
|
| + GetMediaThreadMessageLoopProxy();
|
| if (!cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)) {
|
| if (!gpu_va_context_provider_ ||
|
| gpu_va_context_provider_->DestroyedOnMainThread()) {
|
| @@ -885,11 +887,16 @@ RenderThreadImpl::GetGpuFactories() {
|
| WebKit::WebGraphicsContext3D::Attributes(),
|
| GURL("chrome://gpu/RenderThreadImpl::GetGpuVDAContext3D"))),
|
| "GPU-VideoAccelerator-Offscreen");
|
| + media_loop_proxy->PostTask(
|
| + FROM_HERE,
|
| + base::Bind(
|
| + base::IgnoreResult(&cc::ContextProvider::BindToCurrentThread),
|
| + gpu_va_context_provider_));
|
| }
|
| }
|
| if (gpu_channel_host) {
|
| gpu_factories = new RendererGpuVideoAcceleratorFactories(
|
| - gpu_channel_host.get(), gpu_va_context_provider_);
|
| + gpu_channel_host, media_loop_proxy, gpu_va_context_provider_);
|
| }
|
| return gpu_factories;
|
| }
|
|
|