diff options
| author | Junio C Hamano <gitster@pobox.com> | 2020-02-14 12:54:22 -0800 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2020-02-14 12:54:22 -0800 |
| commit | 78e67cda42a440f216fc4cbfd8a9e190c5eece5a (patch) | |
| tree | 6e1f8349af8dc8ba249a6fd9f4367ef8e983a55d /cache-tree.c | |
| parent | df04a316176d5ba44422c2c6b0cb1a9fc31901e5 (diff) | |
| parent | b98d18858187eb926912d5199533a6d2a14d5007 (diff) | |
| download | git-78e67cda42a440f216fc4cbfd8a9e190c5eece5a.tar.xz | |
Merge branch 'mt/use-passed-repo-more-in-funcs'
Some codepaths were given a repository instance as a parameter to
work in the repository, but passed the_repository instance to its
callees, which has been cleaned up (somewhat).
* mt/use-passed-repo-more-in-funcs:
sha1-file: allow check_object_signature() to handle any repo
sha1-file: pass git_hash_algo to hash_object_file()
sha1-file: pass git_hash_algo to write_object_file_prepare()
streaming: allow open_istream() to handle any repo
pack-check: use given repo's hash_algo at verify_packfile()
cache-tree: use given repo's hash_algo at verify_one()
diff: make diff_populate_filespec() honor its repo argument
Diffstat (limited to 'cache-tree.c')
| -rw-r--r-- | cache-tree.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/cache-tree.c b/cache-tree.c index 1bd1b23d38..a537a806c1 100644 --- a/cache-tree.c +++ b/cache-tree.c @@ -407,13 +407,15 @@ static int update_one(struct cache_tree *it, if (repair) { struct object_id oid; - hash_object_file(buffer.buf, buffer.len, tree_type, &oid); + hash_object_file(the_hash_algo, buffer.buf, buffer.len, + tree_type, &oid); if (has_object_file_with_flags(&oid, OBJECT_INFO_SKIP_FETCH_OBJECT)) oidcpy(&it->oid, &oid); else to_invalidate = 1; } else if (dryrun) { - hash_object_file(buffer.buf, buffer.len, tree_type, &it->oid); + hash_object_file(the_hash_algo, buffer.buf, buffer.len, + tree_type, &it->oid); } else if (write_object_file(buffer.buf, buffer.len, tree_type, &it->oid)) { strbuf_release(&buffer); @@ -826,9 +828,10 @@ static void verify_one(struct repository *r, i++; } strbuf_addf(&tree_buf, "%o %.*s%c", mode, entlen, name, '\0'); - strbuf_add(&tree_buf, oid->hash, the_hash_algo->rawsz); + strbuf_add(&tree_buf, oid->hash, r->hash_algo->rawsz); } - hash_object_file(tree_buf.buf, tree_buf.len, tree_type, &new_oid); + hash_object_file(r->hash_algo, tree_buf.buf, tree_buf.len, tree_type, + &new_oid); if (!oideq(&new_oid, &it->oid)) BUG("cache-tree for path %.*s does not match. " "Expected %s got %s", len, path->buf, |
