On 06/18/2014 05:49 PM, Anuj Phogat wrote:
> Fixes gles3 Khronos CTS test:
> egl_create_context.egl_create_context
>
> Cc: <[email protected]>
> Signed-off-by: Anuj Phogat <[email protected]>
> ---
> 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 <[email protected]>
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
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev