On Sat, Oct 28, 2017 at 11:12 AM, brian m. carlson <sandals@xxxxxxxxxxxxxxxxxxxx> wrote: > > Include repository.h in cache.h since we now need to have access to > these struct and variable definitions. Let's see how that works out. I remember having include issues in the repository struct series. > }; > extern const struct git_hash_algo hash_algos[GIT_HASH_NALGOS]; > > +#define current_hash the_repository->hash_algo > + > #if defined(DT_UNKNOWN) && !defined(NO_D_TYPE_IN_DIRENT) > #define DTYPE(de) ((de)->d_type) > #else > @@ -920,6 +923,7 @@ struct repository_format { > int version; > int precious_objects; > int is_bare; > + int hash_algo; I wonder if this (as well as the #defines in patch 2), ought to be an enum { unknown-hash=0, sha1=1}.