From 2fc0d6a91a0723d0b6b26b838cba521d479fa652 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Thu, 21 Apr 2016 22:28:14 +0200 Subject: [PATCH] cssbgsizevalue: Avoid allocating new value if not needed --- gtk/gtkcssbgsizevalue.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gtk/gtkcssbgsizevalue.c b/gtk/gtkcssbgsizevalue.c index b5da0677d0..3e25ded758 100644 --- a/gtk/gtkcssbgsizevalue.c +++ b/gtk/gtkcssbgsizevalue.c @@ -60,6 +60,16 @@ gtk_css_value_bg_size_compute (GtkCssValue *value, if (value->y) y = _gtk_css_value_compute (value->y, property_id, provider, style, parent_style); + if (x == value->x && y == value->y) + { + if (x) + _gtk_css_value_unref (x); + if (y) + _gtk_css_value_unref (y); + + return _gtk_css_value_ref (value); + } + return _gtk_css_bg_size_value_new (value->x ? x : NULL, value->y ? y : NULL); }