r300g: mark HiZ/ZMask_clear atoms as non-dirty after emission in clear
authorMarek Olšák <maraeo@gmail.com>
Sun, 15 Aug 2010 07:13:50 +0000 (09:13 +0200)
committerMarek Olšák <maraeo@gmail.com>
Sun, 15 Aug 2010 07:20:30 +0000 (09:20 +0200)
src/gallium/drivers/r300/r300_blit.c

index 559936cec68c178a23e9dc62057a6a5a1d3d2152..47ffc0cb3c6a83573abdb66e3c74b1419a08a378 100644 (file)
@@ -237,9 +237,12 @@ static void r300_clear(struct pipe_context* pipe,
         /* Emit clear packets. */
         r300_emit_zmask_clear(r300, r300->zmask_clear.size,
                               r300->zmask_clear.state);
-        if (r300->hiz_clear.dirty)
+        r300->zmask_clear.dirty = FALSE;
+        if (r300->hiz_clear.dirty) {
             r300_emit_hiz_clear(r300, r300->hiz_clear.size,
                                 r300->hiz_clear.state);
+            r300->hiz_clear.dirty = FALSE;
+        }
     } else {
         assert(0);
     }