diff options
author | Cosimo Cecchi <cosimoc@gnome.org> | 2012-01-13 17:55:53 -0500 |
---|---|---|
committer | Cosimo Cecchi <cosimoc@gnome.org> | 2012-01-13 17:55:53 -0500 |
commit | d1f3fe4342878dc303034daa9b388e5d50fbbca4 (patch) | |
tree | 3f33520a883b365ab0c089b3a434d2e6a8000bf1 /gtk/gtkcssimageurl.c | |
parent | 4f4e42239a8365bfc27c2ba238964073e6822921 (diff) | |
download | gtk+-d1f3fe4342878dc303034daa9b388e5d50fbbca4.tar.gz |
parser: remove a duplicate copy of gtk_css_parse_url()
Move the function to gtkcssparser.c and use it in both places.
Diffstat (limited to 'gtk/gtkcssimageurl.c')
-rw-r--r-- | gtk/gtkcssimageurl.c | 58 |
1 files changed, 1 insertions, 57 deletions
diff --git a/gtk/gtkcssimageurl.c b/gtk/gtkcssimageurl.c index cc0509f3fa..8bfd70861a 100644 --- a/gtk/gtkcssimageurl.c +++ b/gtk/gtkcssimageurl.c @@ -59,62 +59,6 @@ gtk_css_image_url_draw (GtkCssImage *image, cairo_fill (cr); } -static GFile * -gtk_css_parse_url (GtkCssParser *parser, - GFile *base) -{ - gchar *path; - GFile *file; - - if (_gtk_css_parser_try (parser, "url", FALSE)) - { - if (!_gtk_css_parser_try (parser, "(", TRUE)) - { - _gtk_css_parser_skip_whitespace (parser); - if (_gtk_css_parser_try (parser, "(", TRUE)) - { - GError *error; - - error = g_error_new_literal (GTK_CSS_PROVIDER_ERROR, - GTK_CSS_PROVIDER_ERROR_DEPRECATED, - "Whitespace between 'url' and '(' is deprecated"); - - _gtk_css_parser_take_error (parser, error); - } - else - { - _gtk_css_parser_error (parser, "Expected '(' after 'url'"); - return NULL; - } - } - - path = _gtk_css_parser_read_string (parser); - if (path == NULL) - return NULL; - - if (!_gtk_css_parser_try (parser, ")", TRUE)) - { - _gtk_css_parser_error (parser, "No closing ')' found for 'url'"); - g_free (path); - return NULL; - } - } - else - { - path = _gtk_css_parser_try_name (parser, TRUE); - if (path == NULL) - { - _gtk_css_parser_error (parser, "Not a valid url"); - return NULL; - } - } - - file = g_file_resolve_relative_path (base, path); - g_free (path); - - return file; -} - static gboolean gtk_css_image_url_parse (GtkCssImage *image, GtkCssParser *parser, @@ -127,7 +71,7 @@ gtk_css_image_url_parse (GtkCssImage *image, cairo_t *cr; GError *error = NULL; - file = gtk_css_parse_url (parser, base); + file = _gtk_css_parser_read_url (parser, base); if (file == NULL) return FALSE; |