[cairo-commit] src/cairo-gl-operand.c
Martin Robinson
mrobinson at kemper.freedesktop.org
Tue Jan 15 15:48:57 PST 2013
src/cairo-gl-operand.c | 3 +++
1 file changed, 3 insertions(+)
New commits:
commit 769ea3b2c757adc9f8f348fdc93bb46f35c2f6b8
Author: Henry Song <henry.song at samsung.com>
Date: Wed May 2 21:54:55 2012 +0200
gl: Support for non-texture sources and masks
If a GL surface is not a texture and is used as source or mask,
fall back to using an image surface as an intermediary.
Fixes subsurface-image-repeat, subsurface-modify-child,
subsurface-modify-parent, subsurface-outside-target, subsurface-pad,
subsurface-reflect, subsurface-repeat, and subsurface-scale.
diff --git a/src/cairo-gl-operand.c b/src/cairo-gl-operand.c
index ee6c08e..47d0104 100644
--- a/src/cairo-gl-operand.c
+++ b/src/cairo-gl-operand.c
@@ -269,6 +269,9 @@ _cairo_gl_surface_operand_init (cairo_gl_operand_t *operand,
if (surface->base.device && surface->base.device != dst->base.device)
return CAIRO_INT_STATUS_UNSUPPORTED;
+ if (! _cairo_gl_surface_is_texture (surface))
+ return CAIRO_INT_STATUS_UNSUPPORTED;
+
status = _resolve_multisampling (surface);
if (unlikely (status))
return status;
More information about the cairo-commit
mailing list