Index: content/renderer/media/webmediaplayer_ms.cc |
diff --git a/content/renderer/media/webmediaplayer_ms.cc b/content/renderer/media/webmediaplayer_ms.cc |
index 98f53696015e6367e7efca0d852566b36c38d788..bad67c7b92f0e7dbb6540faa2c8917a09af875a4 100644 |
--- a/content/renderer/media/webmediaplayer_ms.cc |
+++ b/content/renderer/media/webmediaplayer_ms.cc |
@@ -604,6 +604,7 @@ bool WebMediaPlayerMS::CopyVideoTextureToPlatformTexture( |
bool WebMediaPlayerMS::TexImageImpl(TexImageFunctionID functionID, |
unsigned target, |
gpu::gles2::GLES2Interface* gl, |
+ unsigned int texture, |
int level, |
int internalformat, |
unsigned format, |
@@ -625,9 +626,14 @@ bool WebMediaPlayerMS::TexImageImpl(TexImageFunctionID functionID, |
} |
if (functionID == kTexImage2D) { |
+ auto* provider = |
+ RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); |
+ // GPU Process crashed. |
+ if (!provider) |
+ return false; |
return media::SkCanvasVideoRenderer::TexImage2D( |
- target, gl, video_frame.get(), level, internalformat, format, type, |
- flip_y, premultiply_alpha); |
+ target, texture, gl, provider->ContextCapabilities(), video_frame.get(), |
+ level, internalformat, format, type, flip_y, premultiply_alpha); |
} else if (functionID == kTexSubImage2D) { |
return media::SkCanvasVideoRenderer::TexSubImage2D( |
target, gl, video_frame.get(), level, format, type, xoffset, yoffset, |