egl: Return EGL_BAD_MATCH for invalid profile attributes

Version 12 of the EGL_KHR_create_context spec changed this behavior.

NOTE: This is a candidate for the 9.0 branch
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
This commit is contained in:
Matt Turner 2012-10-08 17:01:34 -07:00
parent 5090ce42e4
commit 587d5db11d
1 changed files with 7 additions and 10 deletions

View File

@ -229,17 +229,14 @@ _eglParseContextAttribList(_EGLContext *ctx, _EGLDisplay *dpy,
*
* "* If an OpenGL context is requested, the requested version
* is greater than 3.2, and the value for attribute
* EGL_CONTEXT_PROFILE_MASK_KHR has no bits set; has any
* bits set other than EGL_CONTEXT_CORE_PROFILE_BIT_KHR and
* EGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_KHR; has more than
* one of these bits set; or if the implementation does not
* support the requested profile, then an
* EGL_BAD_PROFILE_KHR error is generated."
*
* However, it does not define EGL_BAD_PROFILE_KHR. For now use
* EGL_BAD_ATTRIBUTE.
* EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR has no bits set; has
* any bits set other than EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR
* and EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR; has
* more than one of these bits set; or if the implementation does
* not support the requested profile, then an EGL_BAD_MATCH error
* is generated."
*/
err = EGL_BAD_ATTRIBUTE;
err = EGL_BAD_MATCH;
break;
}
}