From ce9fbf16e0000ecca92870a90e4b30afcb3917b7 Mon Sep 17 00:00:00 2001 From: Nicolas Pitre Date: Tue, 20 Mar 2007 16:02:09 -0400 Subject: index-pack: use hash_sha1_file() Use hash_sha1_file() instead of duplicating code to compute object SHA1. While at it make it accept a const pointer. Signed-off-by: Nicolas Pitre Signed-off-by: Junio C Hamano --- index-pack.c | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) (limited to 'index-pack.c') diff --git a/index-pack.c b/index-pack.c index 4effb2da6..f314937a5 100644 --- a/index-pack.c +++ b/index-pack.c @@ -348,26 +348,7 @@ static void sha1_object(const void *data, unsigned long size, enum object_type type, unsigned char *sha1, int test_for_collision) { - SHA_CTX ctx; - char header[50]; - int header_size; - const char *type_str; - - switch (type) { - case OBJ_COMMIT: type_str = commit_type; break; - case OBJ_TREE: type_str = tree_type; break; - case OBJ_BLOB: type_str = blob_type; break; - case OBJ_TAG: type_str = tag_type; break; - default: - die("bad type %d", type); - } - - header_size = sprintf(header, "%s %lu", type_str, size) + 1; - - SHA1_Init(&ctx); - SHA1_Update(&ctx, header, header_size); - SHA1_Update(&ctx, data, size); - SHA1_Final(sha1, &ctx); + hash_sha1_file(data, size, typename(type), sha1); if (test_for_collision && has_sha1_file(sha1)) { void *has_data; -- cgit v1.2.1