diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2011-12-22 11:19:45 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2011-12-22 14:11:39 +0000 |
commit | f621b3de841f6037d387ca1439a0abe12ef29811 (patch) | |
tree | 1c490ae26e9ec8dc7f4afcf357021aeb2a81ef89 /src/sna/gen5_render.c | |
parent | 6c08eb4d6f8789e692ef018e007d1ae97a57c25f (diff) |
sna: flatten source alphamaps
Replace the source picture+alpha with a bo that contains the RGB
channels from source and A from the alpha map.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/gen5_render.c')
-rw-r--r-- | src/sna/gen5_render.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sna/gen5_render.c b/src/sna/gen5_render.c index e1117cc6..180b561a 100644 --- a/src/sna/gen5_render.c +++ b/src/sna/gen5_render.c @@ -1785,6 +1785,12 @@ gen5_composite_picture(struct sna *sna, return sna_render_picture_fixup(sna, picture, channel, x, y, w, h, dst_x, dst_y); + if (picture->alphaMap) { + DBG(("%s -- fallback, alphamap\n", __FUNCTION__)); + return sna_render_picture_fixup(sna, picture, channel, + x, y, w, h, dst_x, dst_y); + } + if (!gen5_check_repeat(picture)) return sna_render_picture_fixup(sna, picture, channel, x, y, w, h, dst_x, dst_y); |