Index: content/common/gpu/image_transport_surface_android.cc |
diff --git a/content/common/gpu/image_transport_surface_android.cc b/content/common/gpu/image_transport_surface_android.cc |
index 2d8ee4373d8f30b7b74343acd212879610a1a6e4..e1b50188c6d14ff25dc9938a703d9228b8b486c3 100644 |
--- a/content/common/gpu/image_transport_surface_android.cc |
+++ b/content/common/gpu/image_transport_surface_android.cc |
@@ -29,6 +29,15 @@ scoped_refptr<gfx::GLSurface> ImageTransportSurface::CreateNativeSurface( |
if (!initialize_success) |
return scoped_refptr<gfx::GLSurface>(); |
+ if (stub->decoder() |
+ ->GetContextGroup() |
+ ->feature_info() |
+ ->workarounds() |
+ .makecurrent_recreates_surfaces) { |
+ static_cast<gfx::NativeViewGLSurfaceEGL*> |
+ (surface.get())->SetRecreateOnMakeCurrent(true); |
+ } |
+ |
return scoped_refptr<gfx::GLSurface>(new PassThroughImageTransportSurface( |
manager, stub, surface.get(), false)); |
} |