From 39be0c5f6c1922e2e2f3c4243dd8257c2e7deef8 Mon Sep 17 00:00:00 2001 From: Laura Ekstrand Date: Tue, 3 Mar 2015 15:05:16 -0800 Subject: [PATCH] main: Refactor _mesa_get_clamp_read_color. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This wasn't neccessary for ARB_direct_state_access, but felt like a good idea for the sake of completeness. Reviewed-by: Fredrik Höglund Signed-off-by: Fredrik Höglund --- src/mesa/main/blend.c | 5 +++-- src/mesa/main/blend.h | 3 ++- src/mesa/main/readpix.c | 4 ++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c index 2342555a95d..d869fa2aa09 100644 --- a/src/mesa/main/blend.c +++ b/src/mesa/main/blend.c @@ -821,9 +821,10 @@ _mesa_get_clamp_vertex_color(const struct gl_context *ctx, } GLboolean -_mesa_get_clamp_read_color(const struct gl_context *ctx) +_mesa_get_clamp_read_color(const struct gl_context *ctx, + const struct gl_framebuffer *readFb) { - return get_clamp_color(ctx->ReadBuffer, ctx->Color.ClampReadColor); + return get_clamp_color(readFb, ctx->Color.ClampReadColor); } /** diff --git a/src/mesa/main/blend.h b/src/mesa/main/blend.h index 58e66736ddc..8ab9e02fc13 100644 --- a/src/mesa/main/blend.h +++ b/src/mesa/main/blend.h @@ -110,7 +110,8 @@ _mesa_get_clamp_vertex_color(const struct gl_context *ctx, const struct gl_framebuffer *drawFb); extern GLboolean -_mesa_get_clamp_read_color(const struct gl_context *ctx); +_mesa_get_clamp_read_color(const struct gl_context *ctx, + const struct gl_framebuffer *readFb); extern void _mesa_update_clamp_fragment_color(struct gl_context *ctx, diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c index ed0104c9e46..df46f8361b9 100644 --- a/src/mesa/main/readpix.c +++ b/src/mesa/main/readpix.c @@ -83,7 +83,7 @@ get_readpixels_transfer_ops(const struct gl_context *ctx, mesa_format texFormat, if (uses_blit) { /* For blit-based ReadPixels packing, the clamping is done automatically * unless the type is float. */ - if (_mesa_get_clamp_read_color(ctx) && + if (_mesa_get_clamp_read_color(ctx, ctx->ReadBuffer) && (type == GL_FLOAT || type == GL_HALF_FLOAT)) { transferOps |= IMAGE_CLAMP_BIT; } @@ -91,7 +91,7 @@ get_readpixels_transfer_ops(const struct gl_context *ctx, mesa_format texFormat, else { /* For CPU-based ReadPixels packing, the clamping must always be done * for non-float types, */ - if (_mesa_get_clamp_read_color(ctx) || + if (_mesa_get_clamp_read_color(ctx, ctx->ReadBuffer) || (type != GL_FLOAT && type != GL_HALF_FLOAT)) { transferOps |= IMAGE_CLAMP_BIT; } -- 2.30.2