diff options
author | Brian Paul <[email protected]> | 2017-08-28 14:17:26 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2017-08-29 20:49:36 -0600 |
commit | 88cdf16871a0f1cd8ec3844072051ee38e945600 (patch) | |
tree | d3c11d1f413749f9909cd0909fd0c0b0afbdf0ef | |
parent | df85a0f54e0ae3925271da5b1fb63adfdbb3fdbd (diff) |
llvmpipe: initialize llvmpipe->dirty with LP_NEW_SCISSOR
If llvmpipe_set_scissor_states() is never called, we still need to be sure
that derived scissor/clip state is updated. As of commit 743ad599a97d09b1
that function might not be called.
Fixes regressed Piglit gl-1.0-scissor-offscreen -fbo -auto test.
Reviewed-by: Roland Scheidegger <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101709
Fixes: 743ad599a97 ("st/mesa: don't set 16 scissors and 16 viewports
if they're unused")
Cc: "17.2" <[email protected]>
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_context.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_context.c b/src/gallium/drivers/llvmpipe/lp_context.c index 599a9f1573a..613d60fd623 100644 --- a/src/gallium/drivers/llvmpipe/lp_context.c +++ b/src/gallium/drivers/llvmpipe/lp_context.c @@ -227,6 +227,12 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv, lp_reset_counters(); + /* If llvmpipe_set_scissor_states() is never called, we still need to + * make sure that derived scissor state is computed. + * See https://bugs.freedesktop.org/show_bug.cgi?id=101709 + */ + llvmpipe->dirty |= LP_NEW_SCISSOR; + return &llvmpipe->pipe; fail: |