]> git.ipfire.org Git - thirdparty/git.git/blobdiff - cache-tree.c
sha1_file: convert hash_sha1_file to object_id
[thirdparty/git.git] / cache-tree.c
index e03e72c34a5c1fc618994ee63f38875d28d91886..6574eeb80dc972b8533363937e072dca0ea61930 100644 (file)
@@ -400,15 +400,14 @@ static int update_one(struct cache_tree *it,
        }
 
        if (repair) {
-               unsigned char sha1[20];
-               hash_sha1_file(buffer.buf, buffer.len, tree_type, sha1);
-               if (has_sha1_file(sha1))
-                       hashcpy(it->oid.hash, sha1);
+               struct object_id oid;
+               hash_object_file(buffer.buf, buffer.len, tree_type, &oid);
+               if (has_sha1_file(oid.hash))
+                       oidcpy(&it->oid, &oid);
                else
                        to_invalidate = 1;
        } else if (dryrun)
-               hash_sha1_file(buffer.buf, buffer.len, tree_type,
-                              it->oid.hash);
+               hash_object_file(buffer.buf, buffer.len, tree_type, &it->oid);
        else if (write_sha1_file(buffer.buf, buffer.len, tree_type, it->oid.hash)) {
                strbuf_release(&buffer);
                return -1;