[Mesa-dev] [PATCH] mesa: fix OES_EGL_image_external being partially allowed in the core profile

Chad Versace chad.versace at linux.intel.com
Wed Jun 5 12:20:35 PDT 2013


On 06/01/2013 06:23 AM, Marek Olšák wrote:
> ---
>   src/glsl/glcpp/glcpp-parse.y           |   14 +++++++-------
>   src/mesa/drivers/common/meta.c         |    3 ++-
>   src/mesa/main/ff_fragment_shader.cpp   |    3 ++-
>   src/mesa/main/teximage.c               |    2 +-
>   src/mesa/state_tracker/st_extensions.c |    3 +--
>   5 files changed, 13 insertions(+), 12 deletions(-)


> diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
> index 9aaa63f..1c27bef 100644
> --- a/src/mesa/main/teximage.c
> +++ b/src/mesa/main/teximage.c
> @@ -798,7 +798,7 @@ _mesa_select_tex_object(struct gl_context *ctx,
>                   ctx->Extensions.ARB_texture_buffer_object ?
>                   texUnit->CurrentTex[TEXTURE_BUFFER_INDEX] : NULL;
>         case GL_TEXTURE_EXTERNAL_OES:
> -         return ctx->Extensions.OES_EGL_image_external
> +         return _mesa_is_gles(ctx) && ctx->Extensions.OES_EGL_image_external
>               ? texUnit->CurrentTex[TEXTURE_EXTERNAL_INDEX] : NULL;
>         case GL_TEXTURE_2D_MULTISAMPLE:
>            return ctx->Extensions.ARB_texture_multisample

A similar check is needed in the switch statement at top of
teximage.c:_mesa_EGLImageTargetTexture2DOES. Otherwise, GL_INVALID_ENUM
does not get emitted on non-GLES contexts.

With that change, this is
Reviewed-by: Chad Versace <chad.versace at linux.intel.com>


More information about the mesa-dev mailing list