return CAIRO_STATUS_SUCCESS;
render_src_x = src_x + render_reference_x - dst_x; render_src_y = src_y + render_reference_y - dst_y;   status = _cairo_image_surface_set_attributes (src, &attributes); if (CAIRO_OK (status)) pixman_composite_trapezoids (operator, src->pixman_image, dst->pixman_image, render_src_x + attributes.x_offset, render_src_y + attributes.y_offset, (pixman_trapezoid_t *) traps, num_traps);  _cairo_pattern_release_surface (&dst->base, &src->base, &attributes);  return status;
_cairo_image_surface_composite_trapezoids (cairo_operator_t	operator,					   cairo_surface_t	*generic_src,					   void			*abstract_dst,					   int			x_src,					   int			y_src,					   cairo_trapezoid_t	*traps,					   int			num_traps){    cairo_image_surface_t *dst = abstract_dst;    cairo_image_surface_t *src = (cairo_image_surface_t *) generic_src;    if (generic_src->backend != dst->base.backend)	return CAIRO_INT_STATUS_UNSUPPORTED;    /* XXX: The pixman_trapezoid_t cast is evil and needs to go away somehow. */    pixman_composite_trapezoids (operator, src->pixman_image, dst->pixman_image,				 x_src, y_src, (pixman_trapezoid_t *) traps, num_traps);    return CAIRO_STATUS_SUCCESS;}