sna: Make sure the alpha map is accessible by the CPU on fallbacks
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
70c9e70f35
commit
5dba7028cd
|
|
@ -493,10 +493,18 @@ fallback:
|
|||
width, height));
|
||||
|
||||
dst_move_area_to_cpu(dst, op, ®ion.extents);
|
||||
if (src->pDrawable)
|
||||
if (dst->alphaMap)
|
||||
sna_drawable_move_to_cpu(dst->alphaMap->pDrawable, true);
|
||||
if (src->pDrawable) {
|
||||
sna_drawable_move_to_cpu(src->pDrawable, false);
|
||||
if (mask && mask->pDrawable)
|
||||
if (src->alphaMap)
|
||||
sna_drawable_move_to_cpu(src->alphaMap->pDrawable, false);
|
||||
}
|
||||
if (mask && mask->pDrawable) {
|
||||
sna_drawable_move_to_cpu(mask->pDrawable, false);
|
||||
if (mask->alphaMap)
|
||||
sna_drawable_move_to_cpu(mask->alphaMap->pDrawable, false);
|
||||
}
|
||||
|
||||
DBG(("%s: fallback -- fbCompposite\n", __FUNCTION__));
|
||||
fbComposite(op, src, mask, dst,
|
||||
|
|
@ -733,6 +741,8 @@ sna_composite_rectangles(CARD8 op,
|
|||
fallback:
|
||||
DBG(("%s: fallback\n", __FUNCTION__));
|
||||
sna_drawable_move_region_to_cpu(&pixmap->drawable, ®ion, true);
|
||||
if (dst->alphaMap)
|
||||
sna_drawable_move_to_cpu(dst->alphaMap->pDrawable, true);
|
||||
|
||||
if (op == PictOpSrc || op == PictOpClear) {
|
||||
PixmapPtr pixmap = get_drawable_pixmap(dst->pDrawable);
|
||||
|
|
|
|||
|
|
@ -941,8 +941,13 @@ glyphs_fallback(CARD8 op,
|
|||
return;
|
||||
|
||||
sna_drawable_move_region_to_cpu(dst->pDrawable, ®ion, true);
|
||||
if (src->pDrawable)
|
||||
if (dst->alphaMap)
|
||||
sna_drawable_move_to_cpu(dst->alphaMap->pDrawable, true);
|
||||
if (src->pDrawable) {
|
||||
sna_drawable_move_to_cpu(src->pDrawable, false);
|
||||
if (src->alphaMap)
|
||||
sna_drawable_move_to_cpu(src->alphaMap->pDrawable, false);
|
||||
}
|
||||
RegionTranslate(®ion, -dst->pDrawable->x, -dst->pDrawable->y);
|
||||
|
||||
dst_image = image_from_pict(dst, TRUE, &x, &y);
|
||||
|
|
|
|||
Loading…
Reference in New Issue