fast-export: convert sha1 to oid

Rename anonymize_sha1() to anonymize_oid(() and change its signature, and switch from sha1_to_hex() to oid_to_hex() and from GIT_SHA1_RAWSZ to the_hash_algo->rawsz. Also change a comment and a die string to mention oid instead of sha1. Signed-off-by: Elijah Newren <newren@gmail.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Elijah Newren committed Nov 15, 2018 at 23:59 UTC 843b9e6d488b430e76fdfdebad186070063a71ea
1 file changed +13 -12
builtin/fast-export.c
+13 -12
@@ -243,7 +243,7 @@ static void export_blob(const struct object_id *oid)
243 if (!buf)
244 die("could not read blob %s", oid_to_hex(oid));
245 if (check_object_signature(oid, buf, size, type_name(type)) < 0)
246 - die("sha1 mismatch in blob %s", oid_to_hex(oid));
246 + die("oid mismatch in blob %s", oid_to_hex(oid));
247 object = parse_object_buffer(the_repository, oid, type,
248 size, buf, &eaten);
249 }
@@ -330,17 +330,18 @@ static void print_path(const char *path)
330
331 static void *generate_fake_oid(const void *old, size_t *len)
332 {
333 - static uint32_t counter = 1; /* avoid null sha1 */
334 - unsigned char *out = xcalloc(GIT_SHA1_RAWSZ, 1);
335 - put_be32(out + GIT_SHA1_RAWSZ - 4, counter++);
333 + static uint32_t counter = 1; /* avoid null oid */
334 + const unsigned hashsz = the_hash_algo->rawsz;
335 + unsigned char *out = xcalloc(hashsz, 1);
336 + put_be32(out + hashsz - 4, counter++);
337 return out;
338 }
339
339 -static const unsigned char *anonymize_sha1(const struct object_id *oid)
340 +static const struct object_id *anonymize_oid(const struct object_id *oid)
341 {
341 - static struct hashmap sha1s;
342 - size_t len = GIT_SHA1_RAWSZ;
343 - return anonymize_mem(&sha1s, generate_fake_oid, oid, &len);
342 + static struct hashmap objs;
343 + size_t len = the_hash_algo->rawsz;
344 + return anonymize_mem(&objs, generate_fake_oid, oid, &len);
345 }
346
347 static void show_filemodify(struct diff_queue_struct *q,
@@ -399,9 +400,9 @@ static void show_filemodify(struct diff_queue_struct *q,
400 */
401 if (no_data || S_ISGITLINK(spec->mode))
402 printf("M %06o %s ", spec->mode,
402 - sha1_to_hex(anonymize ?
403 - anonymize_sha1(&spec->oid) :
404 - spec->oid.hash));
403 + oid_to_hex(anonymize ?
404 + anonymize_oid(&spec->oid) :
405 + &spec->oid));
406 else {
407 struct object *object = lookup_object(the_repository,
408 spec->oid.hash);
@@ -988,7 +989,7 @@ static void handle_deletes(void)
989 continue;
990
991 printf("reset %s\nfrom %s\n\n",
991 - refspec->dst, sha1_to_hex(null_sha1));
992 + refspec->dst, oid_to_hex(&null_oid));
993 }
994 }
995