Web lists-archives.com

Re: [PATCH 4/3] object-store: retire odb_load_loose_cache()




René Scharfe <l.s.r@xxxxxx> writes:

> Inline odb_load_loose_cache() into its only remaining caller,
> odb_loose_cache().  The latter offers a nicer interface for loading the
> cache, as it doesn't require callers to deal with fanout directory
> numbers directly.
>
> Signed-off-by: Rene Scharfe <l.s.r@xxxxxx>
> ---

OK, that's much better ;-)  Thanks.

>  object-store.h | 7 -------
>  sha1-file.c    | 9 ++-------
>  2 files changed, 2 insertions(+), 14 deletions(-)
>
> diff --git a/object-store.h b/object-store.h
> index 2fb6c0e4db..e16aa38cae 100644
> --- a/object-store.h
> +++ b/object-store.h
> @@ -47,13 +47,6 @@ void add_to_alternates_file(const char *dir);
>   */
>  void add_to_alternates_memory(const char *dir);
>  
> -/*
> - * Populate an odb's loose object cache for one particular subdirectory (i.e.,
> - * the one that corresponds to the first byte of objects you're interested in,
> - * from 0 to 255 inclusive).
> - */
> -void odb_load_loose_cache(struct object_directory *odb, int subdir_nr);
> -
>  /*
>   * Populate and return the loose object cache array corresponding to the
>   * given object ID.
> diff --git a/sha1-file.c b/sha1-file.c
> index c3c6e50704..efcb2cbe74 100644
> --- a/sha1-file.c
> +++ b/sha1-file.c
> @@ -2154,12 +2154,6 @@ struct oid_array *odb_loose_cache(struct object_directory *odb,
>  				  const struct object_id *oid)
>  {
>  	int subdir_nr = oid->hash[0];
> -	odb_load_loose_cache(odb, subdir_nr);
> -	return &odb->loose_objects_cache[subdir_nr];
> -}
> -
> -void odb_load_loose_cache(struct object_directory *odb, int subdir_nr)
> -{
>  	struct strbuf buf = STRBUF_INIT;
>  
>  	if (subdir_nr < 0 ||
> @@ -2167,7 +2161,7 @@ void odb_load_loose_cache(struct object_directory *odb, int subdir_nr)
>  		BUG("subdir_nr out of range");
>  
>  	if (odb->loose_objects_subdir_seen[subdir_nr])
> -		return;
> +		return &odb->loose_objects_cache[subdir_nr];
>  
>  	strbuf_addstr(&buf, odb->path);
>  	for_each_file_in_obj_subdir(subdir_nr, &buf,
> @@ -2176,6 +2170,7 @@ void odb_load_loose_cache(struct object_directory *odb, int subdir_nr)
>  				    &odb->loose_objects_cache[subdir_nr]);
>  	odb->loose_objects_subdir_seen[subdir_nr] = 1;
>  	strbuf_release(&buf);
> +	return &odb->loose_objects_cache[subdir_nr];
>  }
>  
>  void odb_clear_loose_cache(struct object_directory *odb)