summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2008-11-24 18:37:18 -0700
committerBrian Paul <brian.paul@tungstengraphics.com>2008-11-24 18:37:36 -0700
commitf8870af44b32d4c69ef11013897143d46966c8e4 (patch)
tree01f5c98a58ada04f26291c554a50ca8ef95239f1 /src/mesa/state_tracker
parent17849eafaacfbb2124d86f561a91b707317d3b31 (diff)
gallium: fix inverted raster pos when drawing into FBO
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_cb_rasterpos.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_cb_rasterpos.c b/src/mesa/state_tracker/st_cb_rasterpos.c
index 3b30c2a61b..3eaccb74e1 100644
--- a/src/mesa/state_tracker/st_cb_rasterpos.c
+++ b/src/mesa/state_tracker/st_cb_rasterpos.c
@@ -146,7 +146,10 @@ rastpos_point(struct draw_stage *stage, struct prim_header *prim)
/* update raster pos */
pos = prim->v[0]->data[0];
ctx->Current.RasterPos[0] = pos[0];
- ctx->Current.RasterPos[1] = height - pos[1]; /* invert Y */
+ if (st_fb_orientation(ctx->DrawBuffer) == Y_0_TOP)
+ ctx->Current.RasterPos[1] = height - pos[1]; /* invert Y */
+ else
+ ctx->Current.RasterPos[1] = pos[1];
ctx->Current.RasterPos[2] = pos[2];
ctx->Current.RasterPos[3] = pos[3];