aboutsummaryrefslogtreecommitdiff
path: root/http.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2014-06-18 15:57:17 -0400
committerJunio C Hamano <gitster@pobox.com>2014-06-20 10:45:19 -0700
commitde8118e153c5e527263086605e437ccca5d4f1ef (patch)
treeec37ddbc7532f1828d4535ab375805a6f794cb7e /http.c
parent6d87780399e1196932cd5ea72f84aa90224e7402 (diff)
downloadgit-de8118e153c5e527263086605e437ccca5d4f1ef.tar.gz
git-de8118e153c5e527263086605e437ccca5d4f1ef.tar.xz
use skip_prefix to avoid repeated calculations
In some cases, we use starts_with to check for a prefix, and then use an already-calculated prefix length to advance a pointer past the prefix. There are no magic numbers or duplicated strings here, but we can still make the code simpler and more obvious by using skip_prefix. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'http.c')
-rw-r--r--http.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/http.c b/http.c
index 2b4f6a357..f04621e61 100644
--- a/http.c
+++ b/http.c
@@ -1087,11 +1087,10 @@ static int update_url_from_redirect(struct strbuf *base,
if (!strcmp(asked, got->buf))
return 0;
- if (!starts_with(asked, base->buf))
+ if (!skip_prefix(asked, base->buf, &tail))
die("BUG: update_url_from_redirect: %s is not a superset of %s",
asked, base->buf);
- tail = asked + base->len;
tail_len = strlen(tail);
if (got->len < tail_len ||