@leroysheep / LeeRoySheep / commits / ae77afc347

odb: drop gaps in object info flag values

The object info flag values have a two gaps in their definitions, where some bits are skipped over. These gaps don't really hurt, but it makes one wonder whether anything is going on and whether a subset of flags might be defined somewhere else. That's not the case though. Instead, this is a case of flags that have been dropped in the past: - The value 4 was used by `OBJECT_INFO_SKIP_CACHED`, removed in 9c8a294a1a (sha1-file: remove OBJECT_INFO_SKIP_CACHED, 2020-01-02). - The value 8 was used by `OBJECT_INFO_ALLOW_UNKNOWN_TYPE`, removed in ae24b032a0 (object-file: drop OBJECT_INFO_ALLOW_UNKNOWN_TYPE flag, 2025-05-16). Close those gaps to avoid any more confusion. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Patrick Steinhardt committed Feb 12, 2026 at 07:59 UTC ae77afc3478c87766c4db9082fa82195d6ce9560
1 file changed +4 -4
odb.h
+4 -4
index bab07755f4..8e1fca7755 100644 --- a/odb.h +++ b/odb.h @@ -353,14 +353,14 @@ struct object_info { #define OBJECT_INFO_INIT { 0 } /* Invoke lookup_replace_object() on the given hash */ -#define OBJECT_INFO_LOOKUP_REPLACE 1 +#define OBJECT_INFO_LOOKUP_REPLACE (1 << 0) /* Do not retry packed storage after checking packed and loose storage */ -#define OBJECT_INFO_QUICK 8 +#define OBJECT_INFO_QUICK (1 << 1) /* * Do not attempt to fetch the object if missing (even if fetch_is_missing is * nonzero). */ -#define OBJECT_INFO_SKIP_FETCH_OBJECT 16 +#define OBJECT_INFO_SKIP_FETCH_OBJECT (1 << 2) /* * This is meant for bulk prefetching of missing blobs in a partial * clone. Implies OBJECT_INFO_SKIP_FETCH_OBJECT and OBJECT_INFO_QUICK @@ -368,7 +368,7 @@ struct object_info { #define OBJECT_INFO_FOR_PREFETCH (OBJECT_INFO_SKIP_FETCH_OBJECT | OBJECT_INFO_QUICK) /* Die if object corruption (not just an object being missing) was detected. */ -#define OBJECT_INFO_DIE_IF_CORRUPT 32 +#define OBJECT_INFO_DIE_IF_CORRUPT (1 << 3) /* * Read object info from the object database and populate the `object_info`