On 06/18/2014 05:49 PM, Anuj Phogat wrote: > Fixes gles3 Khronos CTS test: > egl_create_context.egl_create_context > > Cc: <mesa-sta...@lists.freedesktop.org> > Signed-off-by: Anuj Phogat <anuj.pho...@gmail.com> > --- > src/egl/main/eglcontext.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/src/egl/main/eglcontext.c b/src/egl/main/eglcontext.c > index 70277ab..b8b30cb 100644 > --- a/src/egl/main/eglcontext.c > +++ b/src/egl/main/eglcontext.c > @@ -322,10 +322,15 @@ _eglParseContextAttribList(_EGLContext *ctx, > _EGLDisplay *dpy, > break; > > case 3: > - default: > - /* Don't put additional version checks here. We don't know that > - * there won't be versions > 3.0. > + /* Update this condition if new OpenGL ES 3.x (x > 1) version is > + * announced. > */ > + if (ctx->ClientMinorVersion > 1) > + err = EGL_BAD_MATCH;
I dug around in our EGL code and in the test case a bit more. I think if you delete the preceeding if-statement and add the following to the commit message: We would generate EGL_BAD_CONFIG because _eglGetContextAPIBit returns zero for the combination of EGL_OPENGL_ES_API and a major version > 3. By just returning zero, the caller can't tell the difference between a bad version (which should generate EGL_BAD_MATCH) and a bad API (which should generate EGL_BAD_CONFIG). This patch causes us to filter out major versions > 3 at a point where we can generate the correct error. The patch will be Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> We could also fix this a couple other ways, but I think they're all more intrusive and not worth the effort. > + break; > + > + default: > + err = EGL_BAD_MATCH; > break; > } > } _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev