| Index: ui/gl/gl_gl_api_implementation.cc
|
| diff --git a/ui/gl/gl_gl_api_implementation.cc b/ui/gl/gl_gl_api_implementation.cc
|
| index 94166eed457f039623a47d1f85329b871cd61ba0..ff76d6bebd8641f11e55accd8c6b139d797627dd 100644
|
| --- a/ui/gl/gl_gl_api_implementation.cc
|
| +++ b/ui/gl/gl_gl_api_implementation.cc
|
| @@ -259,6 +259,7 @@ bool VirtualGLApi::MakeCurrent(GLContext* virtual_context, GLSurface* surface) {
|
| // MakeCurrent 'lite' path that avoids potentially expensive MakeCurrent()
|
| // calls if the GLSurface uses the same underlying surface or renders to
|
| // an FBO.
|
| + real_context_->SetCurrent(surface);
|
| if (!surface->OnMakeCurrent(real_context_)) {
|
| LOG(ERROR) << "Could not make GLSurface current.";
|
| return false;
|
| @@ -268,8 +269,9 @@ bool VirtualGLApi::MakeCurrent(GLContext* virtual_context, GLSurface* surface) {
|
| }
|
| }
|
|
|
| - DCHECK(GLSurface::GetCurrent());
|
| - DCHECK(real_context_->IsCurrent(GLSurface::GetCurrent()));
|
| + DCHECK_EQ(real_context_, GLContext::GetRealCurrent());
|
| + DCHECK(GLSurface::GetRealCurrent());
|
| + DCHECK(real_context_->IsCurrent(GLSurface::GetRealCurrent()));
|
| DCHECK(virtual_context->IsCurrent(surface));
|
|
|
| if (switched_contexts || virtual_context != current_context_) {
|
| @@ -290,6 +292,7 @@ bool VirtualGLApi::MakeCurrent(GLContext* virtual_context, GLSurface* surface) {
|
| SetGLApi(temp);
|
| }
|
| SetGLApi(this);
|
| +
|
| return true;
|
| }
|
|
|
|
|