diff options
author | Tapani Pälli <tapani.palli@intel.com> | 2023-08-23 14:55:48 +0300 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2023-08-24 04:26:52 +0000 |
commit | d65fe6eff1fbba390d885c84630a96be37ea76a0 (patch) | |
tree | f6d49618883b252739e02922b8f9273e38367abf /src/mesa/main/samplerobj.c | |
parent | 26c5200acfbc9c8a69eb03b0a96dd116a7958b5c (diff) |
mesa: fix some TexParameter and SamplerParameter cases
EXT extension was added without tests so these functions did
not work properly.
Fixes: 799710be889 ("mesa: Add EXT_texture_mirror_clamp_to_edge to extension table")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24845>
Diffstat (limited to 'src/mesa/main/samplerobj.c')
-rw-r--r-- | src/mesa/main/samplerobj.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index b0010893dd7..1018854689d 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -492,6 +492,15 @@ validate_texture_wrap_mode(struct gl_context *ctx, GLenum wrap) { const struct gl_extensions * const e = &ctx->Extensions; + bool mirror_clamp = + _mesa_has_ATI_texture_mirror_once(ctx) || + _mesa_has_EXT_texture_mirror_clamp(ctx); + + bool mirror_clamp_to_edge = + _mesa_has_ARB_texture_mirror_clamp_to_edge(ctx) || + _mesa_has_EXT_texture_mirror_clamp_to_edge(ctx) || + mirror_clamp; + switch (wrap) { case GL_CLAMP: /* From GL 3.0 specification section E.1 "Profiles and Deprecated @@ -508,9 +517,9 @@ validate_texture_wrap_mode(struct gl_context *ctx, GLenum wrap) case GL_CLAMP_TO_BORDER: return GL_TRUE; case GL_MIRROR_CLAMP_EXT: - return e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp; + return mirror_clamp; case GL_MIRROR_CLAMP_TO_EDGE_EXT: - return e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp || e->ARB_texture_mirror_clamp_to_edge; + return mirror_clamp_to_edge; case GL_MIRROR_CLAMP_TO_BORDER_EXT: return e->EXT_texture_mirror_clamp; default: |