remote-curl: make hash size independent
Change one hard-coded use of the constant 40 to a reference to the_hash_algo. In addition, switch a use of get_oid_hex to parse_oid_hex to avoid the need to use a constant. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
05dfc7cac4
commit
9c9492e8aa
@ -249,7 +249,7 @@ static struct ref *parse_info_refs(struct discovery *heads)
|
||||
if (data[i] == '\t')
|
||||
mid = &data[i];
|
||||
if (data[i] == '\n') {
|
||||
if (mid - start != 40)
|
||||
if (mid - start != the_hash_algo->hexsz)
|
||||
die("%sinfo/refs not valid: is this a git repository?",
|
||||
url.buf);
|
||||
data[i] = 0;
|
||||
@ -1107,12 +1107,13 @@ static void parse_fetch(struct strbuf *buf)
|
||||
const char *name;
|
||||
struct ref *ref;
|
||||
struct object_id old_oid;
|
||||
const char *q;
|
||||
|
||||
if (get_oid_hex(p, &old_oid))
|
||||
if (parse_oid_hex(p, &old_oid, &q))
|
||||
die("protocol error: expected sha/ref, got %s'", p);
|
||||
if (p[GIT_SHA1_HEXSZ] == ' ')
|
||||
name = p + GIT_SHA1_HEXSZ + 1;
|
||||
else if (!p[GIT_SHA1_HEXSZ])
|
||||
if (*q == ' ')
|
||||
name = q + 1;
|
||||
else if (!*q)
|
||||
name = "";
|
||||
else
|
||||
die("protocol error: expected sha/ref, got %s'", p);
|
||||
|
Loading…
Reference in New Issue
Block a user