diff options
Diffstat (limited to 'utils')
-rw-r--r-- | utils/url.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/utils/url.c b/utils/url.c index 3fb04170c..09c2816bf 100644 --- a/utils/url.c +++ b/utils/url.c @@ -240,6 +240,12 @@ char *url_join(const char *rel, const char *base) } /* 2) */ + /* base + "#s" = (current document)#s (see Appendix C.1) */ + /** \todo does (current document) include the query? */ + if (rel_match[9].rm_so != -1) { + fragment = rel + rel_match[9].rm_so; + fragment_len = rel_match[9].rm_eo - rel_match[9].rm_so; + } if (rel_match[5].rm_so == rel_match[5].rm_eo && rel_match[2].rm_so == -1 && rel_match[4].rm_so == -1 && @@ -250,10 +256,6 @@ char *url_join(const char *rel, const char *base) query = rel + rel_match[7].rm_so; query_len = rel_match[7].rm_eo - rel_match[7].rm_so; } - if (rel_match[9].rm_so != -1) { - fragment = rel + rel_match[9].rm_so; - fragment_len = rel_match[9].rm_eo - rel_match[9].rm_so; - } /* 3) */ if (rel_match[2].rm_so != -1) { |