sna/traps: Translate the extents for the rasterization threads

The single-threaded code used the pre-computed width/height and only
required the origin from the bounds. However, the threads need to
allocate memory for themselves based on the computed bounds, and so it
helps if those bounds are then correct (rather than only the top-left
being in local space with the bottom-right in global coordinates).

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2013-01-31 11:33:37 +00:00
parent 033f75e5bd
commit e329e04b10
1 changed files with 3 additions and 1 deletions

View File

@ -2526,7 +2526,7 @@ struct rasterize_traps_thread {
int stride;
BoxRec bounds;
pixman_format_code_t format;
int ntrap, y1, y2;
int ntrap;
};
static void rasterize_traps_thread(void *arg)
@ -2620,6 +2620,8 @@ trapezoids_fallback(CARD8 op, PicturePtr src, PicturePtr dst,
height = bounds.y2 - bounds.y1;
bounds.x1 -= dst->pDrawable->x;
bounds.y1 -= dst->pDrawable->y;
bounds.x2 -= dst->pDrawable->x;
bounds.y2 -= dst->pDrawable->y;
depth = maskFormat->depth;
if (depth == 1) {
format = PIXMAN_a1;