summaryrefslogtreecommitdiff
path: root/src/cairo-surface-fallback.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2009-10-16 10:11:41 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2009-10-16 17:04:16 +0100
commit54df07a3da2bfbbdbe2dde92ca298ac0d7b8d255 (patch)
tree760fa258de427d0701291d8877b2e4741a81dc5e /src/cairo-surface-fallback.c
parent6a19a82efd3afe8fb8bd30e5362b247de8efe159 (diff)
downloadcairo-54df07a3da2bfbbdbe2dde92ca298ac0d7b8d255.tar.gz
[surface] Don't AND in the desired content.
Gah, that was a horrible mistake. It was a flawed hack to create Pixmaps of the correct depth when cloning patterns for blitting to the xlib backend. However, it had the nasty side-effect of discarding alpha when targeting Window surfaces. The correct solution is to simply correct the Pixmap of the desired depth and render a matching pattern onto the surface - i.e. a reversal the current acquire -> clone. See the forthcoming revised xcb backend on how I should have done it originally.
Diffstat (limited to 'src/cairo-surface-fallback.c')
-rw-r--r--src/cairo-surface-fallback.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/cairo-surface-fallback.c b/src/cairo-surface-fallback.c
index f1453b8ab..15d2a63f2 100644
--- a/src/cairo-surface-fallback.c
+++ b/src/cairo-surface-fallback.c
@@ -1835,7 +1835,6 @@ _cairo_surface_fallback_composite_trapezoids (cairo_operator_t op,
cairo_status_t
_cairo_surface_fallback_clone_similar (cairo_surface_t *surface,
cairo_surface_t *src,
- cairo_content_t content,
int src_x,
int src_y,
int width,
@@ -1849,7 +1848,7 @@ _cairo_surface_fallback_clone_similar (cairo_surface_t *surface,
cairo_status_t status;
new_surface = _cairo_surface_create_similar_scratch (surface,
- src->content & content,
+ src->content,
width, height);
if (new_surface == NULL)
return CAIRO_INT_STATUS_UNSUPPORTED;