summaryrefslogtreecommitdiff
path: root/gtk/gtkcssimageicontheme.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2019-03-25 04:11:08 +0100
committerBenjamin Otte <otte@redhat.com>2019-04-12 19:34:28 +0200
commit3597f7e8b100d0ed9d131c022b316b5f33165fe5 (patch)
tree1c6aba8d4c238554a6e14790276f68d7d4107447 /gtk/gtkcssimageicontheme.c
parent38227dc972d1c7457a4ca639c260577894d0b44c (diff)
downloadgtk+-3597f7e8b100d0ed9d131c022b316b5f33165fe5.tar.gz
cssimageicontheme: Use gtk_css_parser_consume_function()
Diffstat (limited to 'gtk/gtkcssimageicontheme.c')
-rw-r--r--gtk/gtkcssimageicontheme.c29
1 files changed, 15 insertions, 14 deletions
diff --git a/gtk/gtkcssimageicontheme.c b/gtk/gtkcssimageicontheme.c
index d481659a4c..ee0dee9afe 100644
--- a/gtk/gtkcssimageicontheme.c
+++ b/gtk/gtkcssimageicontheme.c
@@ -126,30 +126,31 @@ gtk_css_image_icon_theme_snapshot (GtkCssImage *image,
gtk_snapshot_pop (snapshot);
}
+static guint
+gtk_css_image_icon_theme_parse_arg (GtkCssParser *parser,
+ guint arg,
+ gpointer data)
+{
+ GtkCssImageIconTheme *icon_theme = data;
+
+ icon_theme->name = _gtk_css_parser_read_string (parser);
+ if (icon_theme->name == NULL)
+ return 0;
+
+ return 1;
+}
static gboolean
gtk_css_image_icon_theme_parse (GtkCssImage *image,
GtkCssParser *parser)
{
- GtkCssImageIconTheme *icon_theme = GTK_CSS_IMAGE_ICON_THEME (image);
-
- if (!_gtk_css_parser_try (parser, "-gtk-icontheme(", TRUE))
+ if (!gtk_css_parser_has_function (parser, "-gtk-icontheme"))
{
_gtk_css_parser_error (parser, "Expected '-gtk-icontheme('");
return FALSE;
}
- icon_theme->name = _gtk_css_parser_read_string (parser);
- if (icon_theme->name == NULL)
- return FALSE;
-
- if (!_gtk_css_parser_try (parser, ")", TRUE))
- {
- _gtk_css_parser_error (parser, "Missing closing bracket at end of '-gtk-icontheme'");
- return FALSE;
- }
-
- return TRUE;
+ return gtk_css_parser_consume_function (parser, 1, 1, gtk_css_image_icon_theme_parse_arg, image);
}
static void