rendernode: Don't do unnecessary stuff
authorBenjamin Otte <otte@redhat.com>
Mon, 13 Feb 2023 00:23:28 +0000 (01:23 +0100)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 3 Mar 2023 17:24:46 +0000 (11:24 -0600)
Cairo surfaces are created transparent.

And even if they weren't, overdrawing with transparency wouldn't erase
what's in the surface because it's a no-op.

It would require CAIRO_OPERATOR_CLEAR or CAIRO_OPERATOR_SOURCE.

gsk/gskrendernodeimpl.c

index 089b2e9ead32d8630594ea3b9fc085fe890eba26..a84085c9c6b585a1291e6fd4fd50c953f5831fdf 100644 (file)
@@ -1631,9 +1631,6 @@ gsk_texture_scale_node_draw (GskRenderNode *node,
                                          (int) ceilf (node->bounds.size.height));
   cr2 = cairo_create (surface2);
 
-  cairo_set_source_rgba (cr2, 0, 0, 0, 0);
-  cairo_paint (cr2);
-
   surface = gdk_texture_download_surface (self->texture);
   pattern = cairo_pattern_create_for_surface (surface);
   cairo_pattern_set_extend (pattern, CAIRO_EXTEND_PAD);