diff options
author | Benjamin Otte <otte@redhat.com> | 2019-03-25 04:11:08 +0100 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2019-04-12 19:34:28 +0200 |
commit | 3597f7e8b100d0ed9d131c022b316b5f33165fe5 (patch) | |
tree | 1c6aba8d4c238554a6e14790276f68d7d4107447 /gtk/gtkcssimageicontheme.c | |
parent | 38227dc972d1c7457a4ca639c260577894d0b44c (diff) | |
download | gtk+-3597f7e8b100d0ed9d131c022b316b5f33165fe5.tar.gz |
cssimageicontheme: Use gtk_css_parser_consume_function()
Diffstat (limited to 'gtk/gtkcssimageicontheme.c')
-rw-r--r-- | gtk/gtkcssimageicontheme.c | 29 |
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 |