Web lists-archives.com

Re: [PATCH 2/2] tag: convert gpg_verify_tag to use struct object_id




Stefan Beller <sbeller@xxxxxxxxxx> writes:

> diff --git a/builtin/verify-tag.c b/builtin/verify-tag.c
> index f9a5f7535a..ed8329340f 100644
> --- a/builtin/verify-tag.c
> +++ b/builtin/verify-tag.c
> @@ -56,20 +56,21 @@ int cmd_verify_tag(int argc, const char **argv, const char *prefix)
>  	}
>  
>  	while (i < argc) {
> -		unsigned char sha1[20];
> +		struct object_id oid;
>  		const char *name = argv[i++];
> -		if (get_sha1(name, sha1)) {
> +
> +		if (get_oid(name, &oid)) {
>  			had_error = !!error("tag '%s' not found.", name);
>  			continue;
>  		}

This part is already done, it seems, in bc/object-id topic, even
though other parts are not yet done?

>  
> -		if (gpg_verify_tag(sha1, name, flags)) {
> +		if (gpg_verify_tag(&oid, name, flags)) {
>  			had_error = 1;
>  			continue;
>  		}
>  
>  		if (fmt_pretty)
> -			pretty_print_ref(name, sha1, fmt_pretty);
> +			pretty_print_ref(name, oid.hash, fmt_pretty);
>  	}
>  	return had_error;
>  }
> diff --git a/tag.c b/tag.c
> index 47f60ae151..7e10acfb6e 100644
> --- a/tag.c
> +++ b/tag.c
> @@ -33,7 +33,7 @@ static int run_gpg_verify(const char *buf, unsigned long size, unsigned flags)
>  	return ret;
>  }
>  
> -int gpg_verify_tag(const unsigned char *sha1, const char *name_to_report,
> +int gpg_verify_tag(const struct object_id *oid, const char *name_to_report,
>  		unsigned flags)
>  {
>  	enum object_type type;
> @@ -41,20 +41,20 @@ int gpg_verify_tag(const unsigned char *sha1, const char *name_to_report,
>  	unsigned long size;
>  	int ret;
>  
> -	type = sha1_object_info(sha1, NULL);
> +	type = sha1_object_info(oid->hash, NULL);
>  	if (type != OBJ_TAG)
>  		return error("%s: cannot verify a non-tag object of type %s.",
>  				name_to_report ?
>  				name_to_report :
> -				find_unique_abbrev(sha1, DEFAULT_ABBREV),
> +				find_unique_abbrev(oid->hash, DEFAULT_ABBREV),
>  				typename(type));
>  
> -	buf = read_sha1_file(sha1, &type, &size);
> +	buf = read_sha1_file(oid->hash, &type, &size);
>  	if (!buf)
>  		return error("%s: unable to read file.",
>  				name_to_report ?
>  				name_to_report :
> -				find_unique_abbrev(sha1, DEFAULT_ABBREV));
> +				find_unique_abbrev(oid->hash, DEFAULT_ABBREV));
>  
>  	ret = run_gpg_verify(buf, size, flags);
>  
> diff --git a/tag.h b/tag.h
> index fdfcb4a84a..d469534e82 100644
> --- a/tag.h
> +++ b/tag.h
> @@ -17,7 +17,7 @@ extern int parse_tag_buffer(struct tag *item, const void *data, unsigned long si
>  extern int parse_tag(struct tag *item);
>  extern struct object *deref_tag(struct object *, const char *, int);
>  extern struct object *deref_tag_noverify(struct object *);
> -extern int gpg_verify_tag(const unsigned char *sha1,
> +extern int gpg_verify_tag(const struct object_id *oid,
>  		const char *name_to_report, unsigned flags);
>  
>  #endif /* TAG_H */