]> git.ipfire.org Git - thirdparty/git.git/commitdiff
pack-objects: refactor to oid_object_info_extended
authorJonathan Tan <jonathantanmy@google.com>
Tue, 21 Jul 2020 00:21:43 +0000 (17:21 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 21 Jul 2020 21:29:42 +0000 (14:29 -0700)
Use oid_object_info_extended() instead of oid_object_info() because a
subsequent commit needs to specify an additional flag here.

Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/pack-objects.c

index 7016b28485b43f9df360f4f6df23cb7e0e3881dd..e09d140eed4f32a00447ceb9cc9696ff33f7e7bd 100644 (file)
@@ -1707,6 +1707,8 @@ static int can_reuse_delta(const struct object_id *base_oid,
 static void check_object(struct object_entry *entry)
 {
        unsigned long canonical_size;
+       enum object_type type;
+       struct object_info oi = {.typep = &type, .sizep = &canonical_size};
 
        if (IN_PACK(entry)) {
                struct packed_git *p = IN_PACK(entry);
@@ -1840,8 +1842,10 @@ static void check_object(struct object_entry *entry)
                unuse_pack(&w_curs);
        }
 
-       oe_set_type(entry,
-                   oid_object_info(the_repository, &entry->idx.oid, &canonical_size));
+       if (oid_object_info_extended(the_repository, &entry->idx.oid, &oi,
+                                    OBJECT_INFO_LOOKUP_REPLACE) < 0)
+               type = -1;
+       oe_set_type(entry, type);
        if (entry->type_valid) {
                SET_SIZE(entry, canonical_size);
        } else {