From: Timm Bäder Date: Fri, 20 Dec 2019 19:56:28 +0000 (+0100) Subject: renderborder: Only get border width if we really need to X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~20^2~395 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=4fb519f04d1f479cc3c2ab0f967acaf6ddf2ade7;p=gtk4.git renderborder: Only get border width if we really need to We did this unconditionally before the if statement, but we don't need to do it if any of the early-out checks in the not-border-image branch hits. --- diff --git a/gtk/gtkrenderborder.c b/gtk/gtkrenderborder.c index d39c736ff8..45c4e25321 100644 --- a/gtk/gtkrenderborder.c +++ b/gtk/gtkrenderborder.c @@ -654,16 +654,16 @@ gtk_css_style_snapshot_border (GtkCssBoxes *boxes, GtkBorderImage border_image; float border_width[4]; - border_width[0] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_TOP_WIDTH), 100); - border_width[1] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_RIGHT_WIDTH), 100); - border_width[2] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_BOTTOM_WIDTH), 100); - border_width[3] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_LEFT_WIDTH), 100); - if (gtk_border_image_init (&border_image, boxes->style)) { cairo_t *cr; const graphene_rect_t *bounds; + border_width[0] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_TOP_WIDTH), 100); + border_width[1] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_RIGHT_WIDTH), 100); + border_width[2] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_BOTTOM_WIDTH), 100); + border_width[3] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_LEFT_WIDTH), 100); + bounds = gtk_css_boxes_get_border_rect (boxes); gtk_snapshot_push_debug (snapshot, "CSS border image"); @@ -697,6 +697,11 @@ gtk_css_style_snapshot_border (GtkCssBoxes *boxes, border_style[2] = _gtk_css_border_style_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_BOTTOM_STYLE)); border_style[3] = _gtk_css_border_style_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_LEFT_STYLE)); + border_width[0] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_TOP_WIDTH), 100); + border_width[1] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_RIGHT_WIDTH), 100); + border_width[2] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_BOTTOM_WIDTH), 100); + border_width[3] = _gtk_css_number_value_get (gtk_css_style_get_value (boxes->style, GTK_CSS_PROPERTY_BORDER_LEFT_WIDTH), 100); + gtk_snapshot_push_debug (snapshot, "CSS border"); snapshot_border (snapshot, gtk_css_boxes_get_border_box (boxes),