diff options
author | Tay Ray Chuan <rctay89@gmail.com> | 2009-08-17 17:09:43 +0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-08-18 13:59:44 -0700 |
commit | 800324c3addbf60b15114c4292204806b1300060 (patch) | |
tree | 935300efecb4db254a304128d69955dfe76c01e7 /http.c | |
parent | docs: describe impact of repack on "clone -s" (diff) | |
download | tgif-800324c3addbf60b15114c4292204806b1300060.tar.xz |
http.c: don't assume that urls don't end with slash
Make append_remote_object_url() (and by implication,
get_remote_object_url) use end_url_with_slash() to ensure that the url
ends with a slash.
Previously, they assumed that the url did not end with a slash and
as a result appended a slash, sometimes errorneously.
This fixes an issue introduced in 5424bc5 ("http*: add helper methods
for fetching objects (loose)"), where the append_remote_object_url()
implementation in http-push.c, which assumed that urls end with a
slash, was replaced by another one in http.c, which assumed urls did
not end with a slash.
The above issue was raised by Thomas Schlichter:
http://marc.info/?l=git&m=125043105231327
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Tested-by: Thomas Schlichter <thomas.schlichter@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'http.c')
-rw-r--r-- | http.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -719,7 +719,9 @@ void append_remote_object_url(struct strbuf *buf, const char *url, const char *hex, int only_two_digit_prefix) { - strbuf_addf(buf, "%s/objects/%.*s/", url, 2, hex); + end_url_with_slash(buf, url); + + strbuf_addf(buf, "objects/%.*s/", 2, hex); if (!only_two_digit_prefix) strbuf_addf(buf, "%s", hex+2); } |