From 48f6351940ff62c29fff618cec722e845acc86d5 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 20 Oct 2014 22:53:07 +0100 Subject: [PATCH] vc4: Don't look at back stencil state unless two-sided stencil is enabled. Fixes regressions in the next bugfix, because gallium util stuff leaves the back stencil state as 0 if !back->enabled. --- src/gallium/drivers/vc4/vc4_state.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/vc4/vc4_state.c b/src/gallium/drivers/vc4/vc4_state.c index 31f24242860..99b5b3c7271 100644 --- a/src/gallium/drivers/vc4/vc4_state.c +++ b/src/gallium/drivers/vc4/vc4_state.c @@ -203,12 +203,16 @@ vc4_create_depth_stencil_alpha_state(struct pipe_context *pctx, uint8_t front_writemask_bits = tlb_stencil_setup_writemask(front->writemask); - uint8_t back_writemask_bits = - tlb_stencil_setup_writemask(back->writemask); + uint8_t back_writemask = front->writemask; + uint8_t back_writemask_bits = front_writemask_bits; so->stencil_uniforms[0] = tlb_stencil_setup_bits(front, front_writemask_bits); if (back->enabled) { + back_writemask = back->writemask; + back_writemask_bits = + tlb_stencil_setup_writemask(back->writemask); + so->stencil_uniforms[0] |= (1 << 30); so->stencil_uniforms[1] = tlb_stencil_setup_bits(back, back_writemask_bits); -- 2.30.2