egl: QueryContext on a configless context returns zero
MESA_configless_context does not specify the interaction with QueryContext at all, and the code to generate an error in this case predates the Mesa extension. Since EGL_NO_CONFIG_{KHR,MESA} are numerically identical there's no way to distinguish which one the application asked for, so use the KHR behaviour. Reviewed-by: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Eric Anholt <eric@anholt.net> Signed-off-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
parent
e5009b7c26
commit
cc45a5c308
|
@ -538,9 +538,14 @@ _eglQueryContext(_EGLDriver *drv, _EGLDisplay *dpy, _EGLContext *c,
|
|||
|
||||
switch (attribute) {
|
||||
case EGL_CONFIG_ID:
|
||||
if (!c->Config)
|
||||
return _eglError(EGL_BAD_ATTRIBUTE, "eglQueryContext");
|
||||
*value = c->Config->ConfigID;
|
||||
/*
|
||||
* From EGL_KHR_no_config_context:
|
||||
*
|
||||
* "Querying EGL_CONFIG_ID returns the ID of the EGLConfig with
|
||||
* respect to which the context was created, or zero if created
|
||||
* without respect to an EGLConfig."
|
||||
*/
|
||||
*value = c->Config ? c->Config->ConfigID : 0;
|
||||
break;
|
||||
case EGL_CONTEXT_CLIENT_VERSION:
|
||||
*value = c->ClientMajorVersion;
|
||||
|
|
Loading…
Reference in New Issue