summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2017-06-06 15:21:43 +0200
committerSamuel Pitoiset <[email protected]>2017-06-09 09:33:26 +0200
commit328191f26c7494ff92daf7f1c891bb2aee6c8bd9 (patch)
tree1660f4af9e91bbfe6ac5feb3888dc42661435936 /src
parent4c037af9cc06f4e472eab371447ff56753a51ea4 (diff)
mesa: make use of NewScissorRect driver flags
Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/mesa/main/scissor.c2
-rw-r--r--src/mesa/state_tracker/st_context.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/main/scissor.c b/src/mesa/main/scissor.c
index c04c64ca3fe..2f2e226ab93 100644
--- a/src/mesa/main/scissor.c
+++ b/src/mesa/main/scissor.c
@@ -49,6 +49,8 @@ set_scissor_no_notify(struct gl_context *ctx, unsigned idx,
return;
FLUSH_VERTICES(ctx, _NEW_SCISSOR);
+ ctx->NewDriverState |= ctx->DriverFlags.NewScissorRect;
+
ctx->Scissor.ScissorArray[idx].X = x;
ctx->Scissor.ScissorArray[idx].Y = y;
ctx->Scissor.ScissorArray[idx].Width = width;
diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c
index 743c7bde280..1c1c55afe3c 100644
--- a/src/mesa/state_tracker/st_context.c
+++ b/src/mesa/state_tracker/st_context.c
@@ -201,8 +201,7 @@ st_invalidate_state(struct gl_context * ctx)
st->dirty |= ST_NEW_RASTERIZER;
if (new_state & _NEW_SCISSOR)
- st->dirty |= ST_NEW_RASTERIZER |
- ST_NEW_SCISSOR;
+ st->dirty |= ST_NEW_RASTERIZER;
if (new_state & _NEW_FOG)
st->dirty |= ST_NEW_FS_STATE;
@@ -523,6 +522,7 @@ static void st_init_driver_flags(struct st_context *st)
f->NewImageUnits = ST_NEW_IMAGE_UNITS;
f->NewWindowRectangles = ST_NEW_WINDOW_RECTANGLES;
f->NewFramebufferSRGB = ST_NEW_FRAMEBUFFER;
+ f->NewScissorRect = ST_NEW_SCISSOR;
}
struct st_context *st_create_context(gl_api api, struct pipe_context *pipe,