diff options
author | Benjamin Otte <otte@redhat.com> | 2019-04-09 02:15:12 +0200 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2019-04-12 19:34:28 +0200 |
commit | acddc317da3f34ed86824f5c7a725a242b7ade50 (patch) | |
tree | 51ddec8531692dd4dffb9f2e262c82faf03b58b9 /gtk/gtkcssparser.c | |
parent | 7f99c1e58842613573da51737a126bdeec835f1a (diff) | |
download | gtk+-acddc317da3f34ed86824f5c7a725a242b7ade50.tar.gz |
cssparser: Add gtk_css_parser_resolve_url()
Another slight change of semantics and naming for the new parser.
Diffstat (limited to 'gtk/gtkcssparser.c')
-rw-r--r-- | gtk/gtkcssparser.c | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/gtk/gtkcssparser.c b/gtk/gtkcssparser.c index 2b05cb0e24..fa613464a4 100644 --- a/gtk/gtkcssparser.c +++ b/gtk/gtkcssparser.c @@ -126,16 +126,26 @@ gtk_css_parser_get_base_file (GtkCssParser *parser) } GFile * -_gtk_css_parser_get_file_for_path (GtkCssParser *parser, - const char *path) +gtk_css_parser_resolve_url (GtkCssParser *parser, + const char *url) { GFile *base, *file; + char *scheme; g_return_val_if_fail (parser != NULL, NULL); - g_return_val_if_fail (path != NULL, NULL); + g_return_val_if_fail (url != NULL, NULL); + + scheme = g_uri_parse_scheme (url); + if (scheme != NULL) + { + file = g_file_new_for_uri (url); + g_free (scheme); + return file; + } + g_free (scheme); base = gtk_css_parser_get_base_file (parser); - file = g_file_resolve_relative_path (base, path); + file = g_file_resolve_relative_path (base, url); g_object_unref (base); return file; @@ -1029,7 +1039,6 @@ GFile * _gtk_css_parser_read_url (GtkCssParser *parser) { gchar *path; - char *scheme; GFile *file; if (_gtk_css_parser_try (parser, "url", FALSE)) @@ -1050,15 +1059,6 @@ _gtk_css_parser_read_url (GtkCssParser *parser) g_free (path); return NULL; } - - scheme = g_uri_parse_scheme (path); - if (scheme != NULL) - { - file = g_file_new_for_uri (path); - g_free (path); - g_free (scheme); - return file; - } } else { @@ -1070,7 +1070,7 @@ _gtk_css_parser_read_url (GtkCssParser *parser) } } - file = _gtk_css_parser_get_file_for_path (parser, path); + file = gtk_css_parser_resolve_url (parser, path); g_free (path); return file; |