[Mesa-dev] [PATCH] gallivm: (trivial) fix int/uint border color clamping

sroland at vmware.com sroland at vmware.com
Wed Aug 21 19:00:09 PDT 2013


From: Roland Scheidegger <sroland at vmware.com>

Just a copy & paste error.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=68409.
Note that the test passing before probably simply means it doesn't verify
clamping of the border color itself as required by the OpenGL spec.
---
 src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
index d79d94d..f130328 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
@@ -1423,7 +1423,7 @@ lp_build_clamp_border_color(struct lp_build_sample_context *bld,
                 * Border color was stored as int, hence need min/max clamp
                 * only if chan has less than 32 bits..
                 */
-               unsigned chan_size = format_desc->channel[chan].size < 32;
+               unsigned chan_size = format_desc->channel[chan].size;
                if (chan_size < 32) {
                   min_clamp = lp_build_const_int_vec(gallivm, vec4_type,
                                                      0 - (1 << (chan_size - 1)));
@@ -1451,7 +1451,7 @@ lp_build_clamp_border_color(struct lp_build_sample_context *bld,
                 * Border color was stored as uint, hence never need min
                 * clamp, and only need max clamp if chan has less than 32 bits.
                 */
-               unsigned chan_size = format_desc->channel[chan].size < 32;
+               unsigned chan_size = format_desc->channel[chan].size;
                if (chan_size < 32) {
                   max_clamp = lp_build_const_int_vec(gallivm, vec4_type,
                                                      (1 << chan_size) - 1);
-- 
1.7.9.5


More information about the mesa-dev mailing list