From: Timm Bäder Date: Tue, 15 Oct 2019 05:13:28 +0000 (+0200) Subject: cssimagebuiltin: Don't create cairo nodes for empty icons X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~20^2~711 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=bb56b4ef5d975fff91e7caa39e058d02fd7373bb;p=gtk4.git cssimagebuiltin: Don't create cairo nodes for empty icons GTK_CSS_IMAGE_BUILTIN_NONE is not going to draw anything of course, so don't bother creating an empty cairo node for it. --- diff --git a/gtk/gtkcssimagebuiltin.c b/gtk/gtkcssimagebuiltin.c index f377e44e89..e005eb6e2a 100644 --- a/gtk/gtkcssimagebuiltin.c +++ b/gtk/gtkcssimagebuiltin.c @@ -649,8 +649,6 @@ gtk_css_image_builtin_snapshot (GtkCssImage *image, double height, GtkCssImageBuiltinType image_type) { - cairo_t *cr; - g_return_if_fail (GTK_IS_CSS_IMAGE (image)); g_return_if_fail (snapshot != NULL); g_return_if_fail (width > 0); @@ -662,10 +660,11 @@ gtk_css_image_builtin_snapshot (GtkCssImage *image, return; } - cr = gtk_snapshot_append_cairo (snapshot, - &GRAPHENE_RECT_INIT (0, 0, width, height)); - gtk_css_image_builtin_draw (image, cr, width, height, image_type); - cairo_destroy (cr); + if (image_type != GTK_CSS_IMAGE_BUILTIN_NONE) + { + cairo_t *cr = gtk_snapshot_append_cairo (snapshot, + &GRAPHENE_RECT_INIT (0, 0, width, height)); + gtk_css_image_builtin_draw (image, cr, width, height, image_type); + cairo_destroy (cr); + } } - -