diff --git a/test/mask.c b/test/mask.c index a9414e046..6d0e45878 100644 --- a/test/mask.c +++ b/test/mask.c @@ -213,12 +213,10 @@ draw (cairo_t *cr, int width, int height) int x = i * (WIDTH + PAD) + PAD; int y = (ARRAY_SIZE (mask_funcs) * k + j) * (HEIGHT + PAD) + PAD; - /* Clear area we are going to be drawing onto */ + /* Clear intermediate surface we are going to be drawing onto */ cairo_save (cr2); - cairo_set_source_rgba (cr2, 0, 0, 0, 0); /* transparent */ - cairo_set_operator (cr2, CAIRO_OPERATOR_SOURCE); - cairo_rectangle (cr2, x, y, WIDTH, HEIGHT); - cairo_fill (cr2); + cairo_set_operator (cr2, CAIRO_OPERATOR_CLEAR); + cairo_paint (cr2); cairo_restore (cr2); /* draw */