Merge branch 'bc/hash-transition-16'
Conversion from unsigned char[20] to struct object_id continues. * bc/hash-transition-16: (35 commits) gitweb: make hash size independent Git.pm: make hash size independent read-cache: read data in a hash-independent way dir: make untracked cache extension hash size independent builtin/difftool: use parse_oid_hex refspec: make hash size independent archive: convert struct archiver_args to object_id builtin/get-tar-commit-id: make hash size independent get-tar-commit-id: parse comment record hash: add a function to lookup hash algorithm by length remote-curl: make hash size independent http: replace sha1_to_hex http: compute hash of downloaded objects using the_hash_algo http: replace hard-coded constant with the_hash_algo http-walker: replace sha1_to_hex http-push: remove remaining uses of sha1_to_hex http-backend: allow 64-character hex names http-push: convert to use the_hash_algo builtin/pull: make hash-size independent builtin/am: make hash size independent ...
This commit is contained in:
@ -250,7 +250,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?"),
|
||||
transport_anonymize_url(url.buf));
|
||||
data[i] = 0;
|
||||
@ -1114,12 +1114,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);
|
||||
|
||||
Reference in New Issue
Block a user