Re: [PATCH] loose: don't rely on repository global state

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Oct 09, 2024 at 02:58:59AM -0700, Karthik Nayak wrote:
> In `loose.c`, we rely on the global variable `the_hash_algo`. As such we
> have guarded the file with the 'USE_THE_REPOSITORY_VARIABLE' definition.
> Let's derive the hash algorithm from the available repository variable
> and remove this guard. This brings us one step closer to removing the
> global 'the_repository' variable.
> 
> Signed-off-by: Karthik Nayak <karthik.188@xxxxxxxxx>
> ---
>  loose.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/loose.c b/loose.c
> index 6d6a41b7e5..897ba389da 100644
> --- a/loose.c
> +++ b/loose.c
> @@ -1,10 +1,9 @@
> -#define USE_THE_REPOSITORY_VARIABLE
> -
>  #include "git-compat-util.h"
>  #include "hash.h"
>  #include "path.h"
>  #include "object-store.h"
>  #include "hex.h"
> +#include "repository.h"
>  #include "wrapper.h"
>  #include "gettext.h"
>  #include "loose.h"
> @@ -142,8 +141,8 @@ int repo_write_loose_object_map(struct repository *repo)
> 
>  	for (; iter != kh_end(map); iter++) {
>  		if (kh_exist(map, iter)) {
> -			if (oideq(&kh_key(map, iter), the_hash_algo->empty_tree) ||
> -			    oideq(&kh_key(map, iter), the_hash_algo->empty_blob))
> +			if (oideq(&kh_key(map, iter), repo->hash_algo->empty_tree) ||
> +			    oideq(&kh_key(map, iter), repo->hash_algo->empty_blob))
>  				continue;
>  			strbuf_addf(&buf, "%s %s\n", oid_to_hex(&kh_key(map, iter)),
> oid_to_hex(kh_value(map, iter)));
>  			if (write_in_full(fd, buf.buf, buf.len) < 0)

I've already had a look internally and couldn't spot any other things
that'd need to be converted in this file. So this looks good to me,
except for the whitespace-broken parts.

Thanks!

Patrick




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux