Index: ui/gl/gl_context_egl.cc |
diff --git a/ui/gl/gl_context_egl.cc b/ui/gl/gl_context_egl.cc |
index 856d84c89cb572265ed711cde20c8c69bdeba04c..2554f8c5b1d029277e541ab78a2f1ed1680a94b1 100644 |
--- a/ui/gl/gl_context_egl.cc |
+++ b/ui/gl/gl_context_egl.cc |
@@ -93,6 +93,7 @@ bool GLContextEGL::MakeCurrent(GLSurface* surface) { |
if (IsCurrent(surface)) |
return true; |
+ ScopedReleaseCurrent release_current; |
TRACE_EVENT2("gpu", "GLContextEGL::MakeCurrent", |
"context", context_, |
"surface", surface); |
@@ -116,7 +117,6 @@ bool GLContextEGL::MakeCurrent(GLSurface* surface) { |
SetCurrent(surface); |
if (!InitializeDynamicBindings()) { |
- ReleaseCurrent(surface); |
return false; |
} |
@@ -125,6 +125,7 @@ bool GLContextEGL::MakeCurrent(GLSurface* surface) { |
return false; |
} |
+ release_current.Cancel(); |
return true; |
} |