| Index: ui/gl/gl_context_egl.cc
|
| diff --git a/ui/gl/gl_context_egl.cc b/ui/gl/gl_context_egl.cc
|
| index f77c9f9d5eceae26aa917cf340a79621cba7e2cc..e3e18ff879b2b0e72b596b7a868b61ef5c60205f 100644
|
| --- a/ui/gl/gl_context_egl.cc
|
| +++ b/ui/gl/gl_context_egl.cc
|
| @@ -75,7 +75,16 @@ bool GLContextEGL::MakeCurrent(GLSurface* surface) {
|
| if (IsCurrent(surface))
|
| return true;
|
|
|
| - TRACE_EVENT0("gpu", "GLContextEGL::MakeCurrent");
|
| + TRACE_EVENT2("gpu", "GLContextEGL::MakeCurrent",
|
| + "context", context_,
|
| + "surface", surface);
|
| +
|
| + // Mali work-around: glFlush() does not synchronize between contexts
|
| + // chrome-os-partner:10068
|
| +#if defined(OS_CHROMEOS) && defined(ARCH_CPU_ARMEL)
|
| + if (eglGetCurrentContext() != NULL)
|
| + glFinish();
|
| +#endif // defined(OS_CHROMEOS) && defined(ARCH_CPU_ARMEL)
|
|
|
| if (!eglMakeCurrent(display_,
|
| surface->GetHandle(),
|
|
|