diff options
-rw-r--r-- | chromium/ui/gl/gl_context_egl.cc | 3 | ||||
-rw-r--r-- | chromium/ui/gl/gl_context_glx.cc | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/chromium/ui/gl/gl_context_egl.cc b/chromium/ui/gl/gl_context_egl.cc index cd6b534d403..1793d045bd8 100644 --- a/chromium/ui/gl/gl_context_egl.cc +++ b/chromium/ui/gl/gl_context_egl.cc @@ -52,7 +52,8 @@ bool GLContextEGL::Initialize( config_ = compatible_surface->GetConfig(); const EGLint* context_attributes = NULL; - if (GLSurfaceEGL::IsCreateContextRobustnessSupported()) { + if (GLSurfaceEGL::IsCreateContextRobustnessSupported() + && (!share_group()->GetContext() || share_group()->GetContext()->WasAllocatedUsingRobustnessExtension())) { DVLOG(1) << "EGL_EXT_create_context_robustness supported."; context_attributes = kContextRobustnessAttributes; } else { diff --git a/chromium/ui/gl/gl_context_glx.cc b/chromium/ui/gl/gl_context_glx.cc index 407d60048f4..7b8277caac1 100644 --- a/chromium/ui/gl/gl_context_glx.cc +++ b/chromium/ui/gl/gl_context_glx.cc @@ -53,7 +53,8 @@ bool GLContextGLX::Initialize( if (GLSurfaceGLX::IsCreateContextSupported()) { DVLOG(1) << "GLX_ARB_create_context supported."; std::vector<int> attribs; - if (GLSurfaceGLX::IsCreateContextRobustnessSupported()) { + if (GLSurfaceGLX::IsCreateContextRobustnessSupported() + && (!share_group()->GetContext() || share_group()->GetContext()->WasAllocatedUsingRobustnessExtension())) { DVLOG(1) << "GLX_ARB_create_context_robustness supported."; attribs.push_back(GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB); attribs.push_back(GLX_LOSE_CONTEXT_ON_RESET_ARB); |