Module: Mesa
Branch: master
Commit: 46cd3bab933196f46521c9462552ed19d16817e6
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=46cd3bab933196f46521c9462552ed19d16817e6

Author: Eric Anholt <e...@anholt.net>
Date:   Fri Oct 14 15:15:13 2016 -0700

state_tracker: Fix check for scissor enabled when < 0.

DEQP's clear tests like to give us x + w < 0 or y + h < 0.  Since we
were comparing to an unsigned, it would get promoted to unsigned and come
out as bignum >= width or height and we would clear the whole fb instead
of none of the fb.

Fixes 10 tests under deqp-gles2/functional/color_clear.

Reviewed-by: Kenneth Graunke <kenn...@whitecape.org>
Acked-by: Edward O'Callaghan <funfunc...@folklore1984.net>
Reviewed-by: Marek Olšák <marek.ol...@amd.com>

---

 src/mesa/state_tracker/st_cb_clear.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/mesa/state_tracker/st_cb_clear.c 
b/src/mesa/state_tracker/st_cb_clear.c
index 813ba9b..158efc1 100644
--- a/src/mesa/state_tracker/st_cb_clear.c
+++ b/src/mesa/state_tracker/st_cb_clear.c
@@ -318,8 +318,8 @@ is_scissor_enabled(struct gl_context *ctx, struct 
gl_renderbuffer *rb)
    return (ctx->Scissor.EnableFlags & 1) &&
           (scissor->X > 0 ||
            scissor->Y > 0 ||
-           scissor->X + scissor->Width < rb->Width ||
-           scissor->Y + scissor->Height < rb->Height);
+           scissor->X + scissor->Width < (int)rb->Width ||
+           scissor->Y + scissor->Height < (int)rb->Height);
 }
 
 /**

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to