diff --git a/src/cairo-xlib-surface.c b/src/cairo-xlib-surface.c index 353cbcd..1a053d0 100644 --- a/src/cairo-xlib-surface.c +++ b/src/cairo-xlib-surface.c @@ -1818,7 +1817,8 @@ _recategorize_composite_operation (cairo_xlib_surface_t *dst, return DO_XTILE; } - if (dst->buggy_repeat && src_attr->extend == CAIRO_EXTEND_REPEAT) + if (dst->buggy_repeat && src_attr->extend == CAIRO_EXTEND_REPEAT && + (src->width != 1 || src->height != 1)) return DO_UNSUPPORTED; if (! CAIRO_SURFACE_RENDER_HAS_COMPOSITE (src))