From ae24b032a04ccd1565cb1ce13317b56daa77ce7f Mon Sep 17 00:00:00 2001 From: Jeff King Date: Fri, 16 May 2025 00:49:45 -0400 Subject: object-file: drop OBJECT_INFO_ALLOW_UNKNOWN_TYPE flag Since cat-file dropped its "--allow-unknown-type" option in the previous commit, there are no more uses of the internal flag that implemented it. Let's drop it. That in turn lets us drop the strbuf parameter of unpack_loose_header(), which now is always NULL. And without that, we can drop all of the additional code to inflate larger headers into the strbuf. Arguably we could drop ULHR_TOO_LONG, as no callers really care about the distinction from ULHR_BAD. But it's easy enough to retain, and it does let us produce a slightly more specific message in one instance. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- object-store.h | 2 -- 1 file changed, 2 deletions(-) (limited to 'object-store.h') diff --git a/object-store.h b/object-store.h index c2fe5a1960..cf908fe68e 100644 --- a/object-store.h +++ b/object-store.h @@ -240,8 +240,6 @@ struct object_info { /* Invoke lookup_replace_object() on the given hash */ #define OBJECT_INFO_LOOKUP_REPLACE 1 -/* Allow reading from a loose object file of unknown/bogus type */ -#define OBJECT_INFO_ALLOW_UNKNOWN_TYPE 2 /* Do not retry packed storage after checking packed and loose storage */ #define OBJECT_INFO_QUICK 8 /* -- cgit v1.3-6-g1900 From d2956385a9319155928e2d7bc5f9d90eeac5d0a5 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Fri, 16 May 2025 00:49:56 -0400 Subject: oid_object_info(): drop type_name strbuf We provide a mechanism for callers to get the object type as a raw string, rather than an object_type enum. This was in theory useful for returning types that are not representable in the enum, but we consider any such type to be an error, and there are no callers that use the strbuf anymore. Let's drop support to simplify the code a bit. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- object-file.c | 4 +--- object-store.c | 2 -- object-store.h | 1 - packfile.c | 7 +------ 4 files changed, 2 insertions(+), 12 deletions(-) (limited to 'object-store.h') diff --git a/object-file.c b/object-file.c index 7a35bde96e..b10e283529 100644 --- a/object-file.c +++ b/object-file.c @@ -403,8 +403,6 @@ int parse_loose_header(const char *hdr, struct object_info *oi) } type = type_from_string_gently(type_buf, type_len, 1); - if (oi->type_name) - strbuf_add(oi->type_name, type_buf, type_len); if (oi->typep) *oi->typep = type; @@ -466,7 +464,7 @@ int loose_object_info(struct repository *r, * return value implicitly indicates whether the * object even exists. */ - if (!oi->typep && !oi->type_name && !oi->sizep && !oi->contentp) { + if (!oi->typep && !oi->sizep && !oi->contentp) { struct stat st; if (!oi->disk_sizep && (flags & OBJECT_INFO_QUICK)) return quick_has_loose(r, oid) ? 0 : -1; diff --git a/object-store.c b/object-store.c index b8f6955ea7..216c61dcf2 100644 --- a/object-store.c +++ b/object-store.c @@ -646,8 +646,6 @@ static int do_oid_object_info_extended(struct repository *r, *(oi->disk_sizep) = 0; if (oi->delta_base_oid) oidclr(oi->delta_base_oid, the_repository->hash_algo); - if (oi->type_name) - strbuf_addstr(oi->type_name, type_name(co->type)); if (oi->contentp) *oi->contentp = xmemdupz(co->buf, co->size); oi->whence = OI_CACHED; diff --git a/object-store.h b/object-store.h index cf908fe68e..6b55c245eb 100644 --- a/object-store.h +++ b/object-store.h @@ -205,7 +205,6 @@ struct object_info { unsigned long *sizep; off_t *disk_sizep; struct object_id *delta_base_oid; - struct strbuf *type_name; void **contentp; /* Response */ diff --git a/packfile.c b/packfile.c index d91016f1c7..80e35f1032 100644 --- a/packfile.c +++ b/packfile.c @@ -1598,17 +1598,12 @@ int packed_object_info(struct repository *r, struct packed_git *p, *oi->disk_sizep = pack_pos_to_offset(p, pos + 1) - obj_offset; } - if (oi->typep || oi->type_name) { + if (oi->typep) { enum object_type ptot; ptot = packed_to_object_type(r, p, obj_offset, type, &w_curs, curpos); if (oi->typep) *oi->typep = ptot; - if (oi->type_name) { - const char *tn = type_name(ptot); - if (tn) - strbuf_addstr(oi->type_name, tn); - } if (ptot < 0) { type = OBJ_BAD; goto out; -- cgit v1.3-6-g1900