On 12/11/14 18:16, Daniel Stone wrote:
Hi,
On 12 November 2014 12:37, <jfons...@vmware.com
<mailto:jfons...@vmware.com>> wrote:
@@ -544,9 +544,22 @@ dri2_convert_glx_attribs(unsigned num_attribs,
const uint32_t *attribs,
case GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB:
*api = __DRI_API_OPENGL;
break;
- case GLX_CONTEXT_ES2_PROFILE_BIT_EXT:
- *api = __DRI_API_GLES2;
- break;
+ case GLX_CONTEXT_ES_PROFILE_BIT_EXT:
+ switch (*major_ver) {
+ case 3:
+ *api = __DRI_API_GLES3;
+ break;
+ case 2:
+ *api = __DRI_API_GLES2;
+ break;
+ case 1:
+ *api = __DRI_API_GLES;
+ break;
+ default:
+ *error = __DRI_CTX_ERROR_BAD_API;
+ return false;
+ }
+ break;
default:
*error = __DRI_CTX_ERROR_BAD_API;
return false;
@@ -577,19 +590,6 @@ dri2_convert_glx_attribs(unsigned num_attribs,
const uint32_t *attribs,
return false;
}
- /* The GLX_EXT_create_context_es2_profile spec says:
- *
- * "... If the version requested is 2.0, and the
- * GLX_CONTEXT_ES2_PROFILE_BIT_EXT bit is set in the
- * GLX_CONTEXT_PROFILE_MASK_ARB attribute (see below), then
the context
- * returned will implement OpenGL ES 2.0. This is the only
way in which
- * an implementation may request an OpenGL ES 2.0 context."
- */
- if (*api == __DRI_API_GLES2 && (*major_ver != 2 || *minor_ver !=
0)) {
It looks like you're missing minor_ver checking here? For instance, 2.99
isn't a valid GLES version.
Cheers,
Daniel
I'm trying to get this patch off my plate.
I think it should be OK not to check minor_ver here. We don't get
minor_ver for the desktop (non-ES) contexts. I belive the major/minor
version checking done inside Mesa still applies.
Jose
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev