diff --git a/shell/platform/android/android_context_gl.cc b/shell/platform/android/android_context_gl.cc index b61f4ec7433c8..83037429e9d84 100644 --- a/shell/platform/android/android_context_gl.cc +++ b/shell/platform/android/android_context_gl.cc @@ -65,6 +65,12 @@ static EGLResult CreateContext(EGLDisplay display, EGLint attributes[] = {EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE}; EGLContext context = eglCreateContext(display, config, share, attributes); + if (context == EGL_NO_CONTEXT) { + EGLint last_error = eglGetError(); + if (last_error == EGL_BAD_MATCH && share != EGL_NO_CONTEXT) { + context = eglCreateContext(display, config, EGL_NO_CONTEXT, attributes); + } + } return {context != EGL_NO_CONTEXT, context}; }