[Mesa-dev] [PATCH] mesa: Disallow GL_RED/GL_RG with half-floats on GLES2.

Mark Janes mark.a.janes at intel.com
Thu Oct 12 20:40:17 UTC 2017


Tested-by: Mark Janes <mark.a.janes at intel.com>

Eric Anholt <eric at anholt.net> writes:

> Sure, you'd think that the combination of GL_OES_texture_half_float and
> GL_EXT_texture_rg would mean that GL_RG16F exists, but it doesn't.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103227
> Fixes: c16a7443e999 ("mesa: Expose GL_OES_required_internalformat on GLES contexts.")
> ---
>
> Apparently the last Intel CI run I had (and the one before that that I
> thought had come back clean) didn't cover the older GLES2-only
> platforms.
>
>  src/mesa/main/glformats.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/src/mesa/main/glformats.c b/src/mesa/main/glformats.c
> index 7b4b405a814f..1e797c24c2ac 100644
> --- a/src/mesa/main/glformats.c
> +++ b/src/mesa/main/glformats.c
> @@ -3119,6 +3119,8 @@ _mesa_es3_error_check_format_and_type(const struct gl_context *ctx,
>        case GL_HALF_FLOAT_OES:
>           switch (internalFormat) {
>              case GL_RG16F:
> +               if (ctx->Version <= 20)
> +                  return GL_INVALID_OPERATION;
>                 break;
>              case GL_RG:
>                 if (ctx->Extensions.ARB_texture_rg &&
> @@ -3207,6 +3209,8 @@ _mesa_es3_error_check_format_and_type(const struct gl_context *ctx,
>        case GL_HALF_FLOAT_OES:
>           switch (internalFormat) {
>           case GL_R16F:
> +            if (ctx->Version <= 20)
> +               return GL_INVALID_OPERATION;
>              break;
>           case GL_RG:
>           case GL_RED:
> -- 
> 2.14.2
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list