diff options
Diffstat (limited to '')
| -rw-r--r-- | ui-shared.c | 10 | 
1 files changed, 5 insertions, 5 deletions
| diff --git a/ui-shared.c b/ui-shared.c index 3fa36d6..2e4fcd9 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -1074,18 +1074,18 @@ void cgit_print_filemode(unsigned short mode)  void cgit_compose_snapshot_prefix(struct strbuf *filename, const char *base,  				  const char *ref)  { -	unsigned char sha1[20]; +	struct object_id oid;  	/*  	 * Prettify snapshot names by stripping leading "v" or "V" if the tag  	 * name starts with {v,V}[0-9] and the prettify mapping is injective,  	 * i.e. each stripped tag can be inverted without ambiguities.  	 */ -	if (get_sha1(fmt("refs/tags/%s", ref), sha1) == 0 && +	if (get_oid(fmt("refs/tags/%s", ref), &oid) == 0 &&  	    (ref[0] == 'v' || ref[0] == 'V') && isdigit(ref[1]) && -	    ((get_sha1(fmt("refs/tags/%s", ref + 1), sha1) == 0) + -	     (get_sha1(fmt("refs/tags/v%s", ref + 1), sha1) == 0) + -	     (get_sha1(fmt("refs/tags/V%s", ref + 1), sha1) == 0) == 1)) +	    ((get_oid(fmt("refs/tags/%s", ref + 1), &oid) == 0) + +	     (get_oid(fmt("refs/tags/v%s", ref + 1), &oid) == 0) + +	     (get_oid(fmt("refs/tags/V%s", ref + 1), &oid) == 0) == 1))  		ref++;  	strbuf_addf(filename, "%s-%s", base, ref); | 
