diff --git a/src/cairo-gl-operand.c b/src/cairo-gl-operand.c index a6c7185..05e65bc 100644 --- a/src/cairo-gl-operand.c +++ b/src/cairo-gl-operand.c @@ -212,6 +212,9 @@ _cairo_gl_surface_operand_init (cairo_gl_operand_t *operand, if (surface->base.type != CAIRO_SURFACE_TYPE_GL) return CAIRO_INT_STATUS_UNSUPPORTED; + if (surface->tex == 0) + return CAIRO_INT_STATUS_UNSUPPORTED; + if (surface->base.backend->type != CAIRO_SURFACE_TYPE_GL) { if (_cairo_surface_is_subsurface (&surface->base)) return _cairo_gl_subsurface_operand_init (operand, _src, dst,