Following the reason in the preceding commit, convert the
`odb_has_object()` flags into an enum.
With this change, we would have catched the misuse of `odb_has_object()`
that was fixed in a preceding commit as the compiler would have
generated a warning:
../builtin/backfill.c:71:9: error: implicit conversion from enumeration type 'enum odb_object_info_flag' to different enumeration type 'enum odb_has_object_flag' [-Werror,-Wenum-conversion]
70 | if (!odb_has_object(ctx->repo->objects, &list->oid[i],
| ~~~~~~~~~~~~~~
71 | OBJECT_INFO_FOR_PREFETCH))
| ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
}
int odb_has_object(struct object_database *odb, const struct object_id *oid,
- unsigned flags)
+ enum has_object_flags flags)
{
unsigned object_info_flags = 0;
const struct object_id *oid,
unsigned long *sizep);
-enum {
+enum has_object_flags {
/* Retry packed storage after checking packed and loose storage */
HAS_OBJECT_RECHECK_PACKED = (1 << 0),
/* Allow fetching the object in case the repository has a promisor remote. */
*/
int odb_has_object(struct object_database *odb,
const struct object_id *oid,
- unsigned flags);
+ enum has_object_flags flags);
int odb_freshen_object(struct object_database *odb,
const struct object_id *oid);