Index: content/renderer/media/webmediaplayer_ms.cc |
diff --git a/content/renderer/media/webmediaplayer_ms.cc b/content/renderer/media/webmediaplayer_ms.cc |
index a3176ee9a17f1c8cd8142d10b5b816d206dfba41..d9ca13f97ee262f382cfb20c09c8cdde106f1420 100644 |
--- a/content/renderer/media/webmediaplayer_ms.cc |
+++ b/content/renderer/media/webmediaplayer_ms.cc |
@@ -603,6 +603,7 @@ bool WebMediaPlayerMS::copyVideoTextureToPlatformTexture( |
bool WebMediaPlayerMS::texImageImpl(TexImageFunctionID functionID, |
unsigned target, |
gpu::gles2::GLES2Interface* gl, |
+ unsigned int texture, |
int level, |
int internalformat, |
unsigned format, |
@@ -624,9 +625,14 @@ bool WebMediaPlayerMS::texImageImpl(TexImageFunctionID functionID, |
} |
if (functionID == TexImage2D) { |
+ 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 == TexSubImage2D) { |
return media::SkCanvasVideoRenderer::TexSubImage2D( |
target, gl, video_frame.get(), level, format, type, xoffset, yoffset, |