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

Author: Zachary Michaels <[email protected]>
Date:   Thu Jan 19 10:50:16 2017 +0100

radeonsi: Always leave poly_offset in a valid state

This commit makes si_update_poly_offset set poly_offset to NULL if
uses_poly_offset is false. This way poly_offset either points into the
currently queued rasterizer, or it is NULL.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99451
Cc: "13.0 17.0" <[email protected]>
Reviewed-by: Nicolai Hähnle <[email protected]>

---

 src/gallium/drivers/radeonsi/si_state.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_state.c 
b/src/gallium/drivers/radeonsi/si_state.c
index f60a499..0ec34f9 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -717,8 +717,10 @@ static void si_update_poly_offset_state(struct si_context 
*sctx)
 {
        struct si_state_rasterizer *rs = sctx->queued.named.rasterizer;
 
-       if (!rs || !rs->uses_poly_offset || !sctx->framebuffer.state.zsbuf)
+       if (!rs || !rs->uses_poly_offset || !sctx->framebuffer.state.zsbuf) {
+               si_pm4_bind_state(sctx, poly_offset, NULL);
                return;
+       }
 
        /* Use the user format, not db_render_format, so that the polygon
         * offset behaves as expected by applications.

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to