From: Anuj Phogat Date: Thu, 19 Jun 2014 00:35:18 +0000 (-0700) Subject: egl: Fix OpenGL ES version checks in _eglParseContextAttribList() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d308f57fe796a39d7d3f547aad62540cfd520675;p=mesa.git egl: Fix OpenGL ES version checks in _eglParseContextAttribList() 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. Fixes gles3 Khronos CTS test: egl_create_context.egl_create_context V2: Fix commit message as suggested by Ian. Cc: Signed-off-by: Anuj Phogat Reviewed-by: Tapani Pälli Reviewed-by: Ian Romanick --- diff --git a/src/egl/main/eglcontext.c b/src/egl/main/eglcontext.c index 70277ab9db6..514b91aeef2 100644 --- a/src/egl/main/eglcontext.c +++ b/src/egl/main/eglcontext.c @@ -322,11 +322,14 @@ _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. */ break; + + default: + err = EGL_BAD_MATCH; + break; } }