diff options
Diffstat (limited to 'src/mesa/drivers/dri/i915/i830_state.c')
-rw-r--r-- | src/mesa/drivers/dri/i915/i830_state.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/mesa/drivers/dri/i915/i830_state.c b/src/mesa/drivers/dri/i915/i830_state.c index cf850588aad..a69c7ea5807 100644 --- a/src/mesa/drivers/dri/i915/i830_state.c +++ b/src/mesa/drivers/dri/i915/i830_state.c @@ -527,7 +527,7 @@ i830PolygonStipple(struct gl_context * ctx, const GLubyte * mask) * Hardware clipping */ static void -i830Scissor(struct gl_context * ctx, GLint x, GLint y, GLsizei w, GLsizei h) +i830Scissor(struct gl_context * ctx) { struct i830_context *i830 = i830_context(ctx); int x1, y1, x2, y2; @@ -535,22 +535,24 @@ i830Scissor(struct gl_context * ctx, GLint x, GLint y, GLsizei w, GLsizei h) if (!ctx->DrawBuffer) return; - DBG("%s %d,%d %dx%d\n", __FUNCTION__, x, y, w, h); + DBG("%s %d,%d %dx%d\n", __FUNCTION__, + ctx->Scissor.X, ctx->Scissor.Y, + ctx->Scissor.Width, ctx->Scissor.Height); if (_mesa_is_winsys_fbo(ctx->DrawBuffer)) { - x1 = x; - y1 = ctx->DrawBuffer->Height - (y + h); - x2 = x + w - 1; - y2 = y1 + h - 1; + x1 = ctx->Scissor.X; + y1 = ctx->DrawBuffer->Height - (ctx->Scissor.Y + ctx->Scissor.Height); + x2 = ctx->Scissor.X + ctx->Scissor.Width - 1; + y2 = y1 + ctx->Scissor.Height - 1; DBG("%s %d..%d,%d..%d (inverted)\n", __FUNCTION__, x1, x2, y1, y2); } else { /* FBO - not inverted */ - x1 = x; - y1 = y; - x2 = x + w - 1; - y2 = y + h - 1; + x1 = ctx->Scissor.X; + y1 = ctx->Scissor.Y; + x2 = ctx->Scissor.X + ctx->Scissor.Width - 1; + y2 = ctx->Scissor.Y + ctx->Scissor.Height - 1; DBG("%s %d..%d,%d..%d (not inverted)\n", __FUNCTION__, x1, x2, y1, y2); } |