ui-shared: replace 'unsigned char sha1[20]' with 'struct object_id oid'
Upstream git is replacing 'unsigned char sha1[20]' with 'struct object_id oid'. We have some code that can be changed independent from upstream. So here we go...
This commit is contained in:
vanhempi
073a8bb396
commit
6bef566f99
10
ui-shared.c
10
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,
|
void cgit_compose_snapshot_prefix(struct strbuf *filename, const char *base,
|
||||||
const char *ref)
|
const char *ref)
|
||||||
{
|
{
|
||||||
unsigned char sha1[20];
|
struct object_id oid;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Prettify snapshot names by stripping leading "v" or "V" if the tag
|
* 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,
|
* name starts with {v,V}[0-9] and the prettify mapping is injective,
|
||||||
* i.e. each stripped tag can be inverted without ambiguities.
|
* 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]) &&
|
(ref[0] == 'v' || ref[0] == 'V') && isdigit(ref[1]) &&
|
||||||
((get_sha1(fmt("refs/tags/%s", ref + 1), sha1) == 0) +
|
((get_oid(fmt("refs/tags/%s", ref + 1), &oid) == 0) +
|
||||||
(get_sha1(fmt("refs/tags/v%s", ref + 1), sha1) == 0) +
|
(get_oid(fmt("refs/tags/v%s", ref + 1), &oid) == 0) +
|
||||||
(get_sha1(fmt("refs/tags/V%s", ref + 1), sha1) == 0) == 1))
|
(get_oid(fmt("refs/tags/V%s", ref + 1), &oid) == 0) == 1))
|
||||||
ref++;
|
ref++;
|
||||||
|
|
||||||
strbuf_addf(filename, "%s-%s", base, ref);
|
strbuf_addf(filename, "%s-%s", base, ref);
|
||||||
|
Ladataan…
Viittaa uudesa ongelmassa
Block a user