radv: Only save the descriptor set if we have one.
[mesa.git] / src / mesa / drivers / dri / nouveau / nv04_state_raster.c
index 26cf32f2a25ada2c7289b8d2e94f9c00f3fea184..a2b0ab921de844895f2e7c0bd1db7576bca03745 100644 (file)
@@ -162,20 +162,20 @@ nv04_emit_control(struct gl_context *ctx, int emit)
                         FLOAT_TO_UBYTE(ctx->Color.AlphaRef);
 
        /* Color mask. */
-       if (ctx->Color.ColorMask[0][RCOMP])
+       if (GET_COLORMASK_BIT(ctx->Color.ColorMask, 0, 0))
                nv04->ctrl[0] |= NV04_MULTITEX_TRIANGLE_CONTROL0_RED_WRITE;
-       if (ctx->Color.ColorMask[0][GCOMP])
+       if (GET_COLORMASK_BIT(ctx->Color.ColorMask, 0, 1))
                nv04->ctrl[0] |= NV04_MULTITEX_TRIANGLE_CONTROL0_GREEN_WRITE;
-       if (ctx->Color.ColorMask[0][BCOMP])
+       if (GET_COLORMASK_BIT(ctx->Color.ColorMask, 0, 2))
                nv04->ctrl[0] |= NV04_MULTITEX_TRIANGLE_CONTROL0_BLUE_WRITE;
-       if (ctx->Color.ColorMask[0][ACOMP])
+       if (GET_COLORMASK_BIT(ctx->Color.ColorMask, 0, 3))
                nv04->ctrl[0] |= NV04_MULTITEX_TRIANGLE_CONTROL0_ALPHA_WRITE;
 
        /* Stencil test. */
        if (ctx->Stencil.WriteMask[0])
                nv04->ctrl[0] |= NV04_MULTITEX_TRIANGLE_CONTROL0_STENCIL_WRITE;
 
-       if (ctx->Stencil.Enabled)
+       if (_mesa_stencil_is_enabled(ctx))
                nv04->ctrl[1] |= NV04_MULTITEX_TRIANGLE_CONTROL1_STENCIL_ENABLE;
 
        nv04->ctrl[1] |= get_comparison_op(ctx->Stencil.Function[0]) << 4 |