mirror of
https://github.com/git-for-windows/git.git
synced 2026-06-19 16:55:31 -05:00
packfile: use higher-level interface to implement has_object_pack()
In `has_object_pack()` we're checking whether a specific object exists as part of a packfile. This is done by calling the low-level function `find_pack_entry()`, but this function will eventually be moved into "odb/source-packed.c" and made file-local. Refactor the code to use `packfile_store_read_object_info()` instead. This refactoring is functionally equivalent as that function will call `find_pack_entry()` itself and then return immediately when it ain't got no object info pointer as parameter. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
9ea4ef8586
commit
77e175c6d0
@@ -2049,14 +2049,12 @@ struct packed_git **packfile_store_get_kept_pack_cache(struct odb_source_packed
|
||||
int has_object_pack(struct repository *r, const struct object_id *oid)
|
||||
{
|
||||
struct odb_source *source;
|
||||
struct pack_entry e;
|
||||
|
||||
odb_prepare_alternates(r->objects);
|
||||
for (source = r->objects->sources; source; source = source->next) {
|
||||
struct odb_source_files *files = odb_source_files_downcast(source);
|
||||
int ret = find_pack_entry(files->packed, oid, &e);
|
||||
if (ret)
|
||||
return ret;
|
||||
if (!packfile_store_read_object_info(files->packed, oid, NULL, 0))
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user