From 138fbb1c6c8279463951361dc62cbde71b04120e Mon Sep 17 00:00:00 2001 From: Erik Faye-Lund Date: Fri, 31 Oct 2025 11:50:06 +0100 Subject: [PATCH] mesa: introduce and use _mesa_has_texture_buffer_range This reduces some code-repetition, and makes it a bit easier to reason about what this actually tests for. Reviewed-by: Lars-Ivar Hesselberg Simonsen Reviewed-by: Iago Toral Quiroga Part-of: --- src/mesa/main/context.h | 7 +++++++ src/mesa/main/texparam.c | 9 +++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h index a8aa280a730..e845146b66b 100644 --- a/src/mesa/main/context.h +++ b/src/mesa/main/context.h @@ -491,6 +491,13 @@ _mesa_has_texture_buffer_object(const struct gl_context *ctx) (_mesa_is_desktop_gl(ctx) && ctx->Version >= 31); } +static inline bool +_mesa_has_texture_buffer_range(const struct gl_context *ctx) +{ + return _mesa_has_ARB_texture_buffer_range(ctx) || + _mesa_has_OES_texture_buffer(ctx); +} + static inline bool _mesa_has_texture_view(const struct gl_context *ctx) { diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index a3fc26adb78..16d00100b73 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -1716,8 +1716,7 @@ _mesa_legal_get_tex_level_parameter_target(struct gl_context *ctx, GLenum target * GetTexLevelParameter. */ return (_mesa_is_desktop_gl(ctx) && ctx->Version >= 31) || - _mesa_has_OES_texture_buffer(ctx) || - _mesa_has_ARB_texture_buffer_range(ctx); + _mesa_has_texture_buffer_range(ctx); case GL_TEXTURE_CUBE_MAP_ARRAY: return _mesa_has_texture_cube_map_array(ctx); } @@ -2055,14 +2054,12 @@ get_tex_level_parameter_buffer(struct gl_context *ctx, /* GL_ARB_texture_buffer_range */ case GL_TEXTURE_BUFFER_OFFSET: - if (!_mesa_has_ARB_texture_buffer_range(ctx) && - !_mesa_has_OES_texture_buffer(ctx)) + if (!_mesa_has_texture_buffer_range(ctx)) goto invalid_pname; *params = texObj->BufferOffset; break; case GL_TEXTURE_BUFFER_SIZE: - if (!_mesa_has_ARB_texture_buffer_range(ctx) && - !_mesa_has_OES_texture_buffer(ctx)) + if (!_mesa_has_texture_buffer_range(ctx)) goto invalid_pname; *params = (texObj->BufferSize == -1) ? bo->Size : texObj->BufferSize; break;