diff options
Diffstat (limited to 'src/mesa/pipe/softpipe/sp_quad_output.c')
-rw-r--r-- | src/mesa/pipe/softpipe/sp_quad_output.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/pipe/softpipe/sp_quad_output.c b/src/mesa/pipe/softpipe/sp_quad_output.c index cebfec18f7..bfd7baa946 100644 --- a/src/mesa/pipe/softpipe/sp_quad_output.c +++ b/src/mesa/pipe/softpipe/sp_quad_output.c @@ -43,11 +43,13 @@ output_quad(struct quad_stage *qs, struct quad_header *quad) { struct softpipe_context *softpipe = qs->softpipe; struct softpipe_cached_tile *tile - = sp_get_cached_tile(softpipe, softpipe->cbuf_cache[0], + = sp_get_cached_tile(softpipe, + softpipe->cbuf_cache[softpipe->current_cbuf], quad->x0, quad->y0); /* in-tile pos: */ const int itx = quad->x0 % TILE_SIZE; const int ity = quad->y0 % TILE_SIZE; + float (*quadColor)[4] = quad->outputs.color; int i, j; /* get/swizzle dest colors */ @@ -56,7 +58,7 @@ output_quad(struct quad_stage *qs, struct quad_header *quad) int x = itx + (j & 1); int y = ity + (j >> 1); for (i = 0; i < 4; i++) { /* loop over color chans */ - tile->data.color[y][x][i] = quad->outputs.color[i][j]; + tile->data.color[y][x][i] = quadColor[i][j]; } } } |