Author: John Keeping <john@keeping.me.uk>
ui-shared: pass repo object to print_snapshot_links() Both call sites of cgit_print_snapshot_links() use the same values for the snapshot mask and repository name, which are derived from the cgit_repo structure so let's pass in the structure and access the fields directly. Signed-off-by: John Keeping <john@keeping.me.uk> Reviewed-by: Christian Hesse <mail@eworm.de>
ui-commit.c | 3 +-- ui-shared.c | 8 ++++---- ui-shared.h | 4 ++-- ui-tag.c | 3 +--
diff --git a/ui-commit.c b/ui-commit.c index abf58f68f3a87251548180918ab193c44ef70315..ea17461a59ccd90697884fab6b9483776a71eb4c 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -110,8 +110,7 @@ parents++; } if (ctx.repo->snapshots) { html("<tr><th>download</th><td colspan='2' class='sha1'>"); - cgit_print_snapshot_links(ctx.qry.repo, ctx.qry.head, - hex, ctx.repo->snapshots); + cgit_print_snapshot_links(ctx.repo, ctx.qry.head, hex); html("</td></tr>"); } html("</table>\n"); diff --git a/ui-shared.c b/ui-shared.c index 0c6ca60cd88af6aaf2c6176af7ae0359b37ce025..e719c1b00303e7258df96f18a96b0c1482217ef7 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -1103,17 +1103,17 @@ strbuf_addf(filename, "%s-%s", base, ref); } -void cgit_print_snapshot_links(const char *repo, const char *head, - const char *hex, int snapshots) +void cgit_print_snapshot_links(const struct cgit_repo *repo, const char *head, + const char *hex) { const struct cgit_snapshot_format* f; struct strbuf filename = STRBUF_INIT; size_t prefixlen; - cgit_compose_snapshot_prefix(&filename, cgit_repobasename(repo), hex); + cgit_compose_snapshot_prefix(&filename, cgit_repobasename(repo->url), hex); prefixlen = filename.len; for (f = cgit_snapshot_formats; f->suffix; f++) { - if (!(snapshots & f->bit)) + if (!(repo->snapshots & f->bit)) continue; strbuf_setlen(&filename, prefixlen); strbuf_addstr(&filename, f->suffix); diff --git a/ui-shared.h b/ui-shared.h index b760a17badbbd89bb87adeabeef56412a175a426..b3eb8c5be63f763bb6c3f24d132c2b50b5803d5c 100644 --- a/ui-shared.h +++ b/ui-shared.h @@ -76,8 +76,8 @@ extern void cgit_print_pageheader(void); extern void cgit_print_filemode(unsigned short mode); extern void cgit_compose_snapshot_prefix(struct strbuf *filename, const char *base, const char *ref); -extern void cgit_print_snapshot_links(const char *repo, const char *head, - const char *hex, int snapshots); +extern void cgit_print_snapshot_links(const struct cgit_repo *repo, + const char *head, const char *hex); extern void cgit_add_hidden_formfields(int incl_head, int incl_search, const char *page); diff --git a/ui-tag.c b/ui-tag.c index 2c216d04ff273287946d3efa256d2f87cf7a2ab6..89a46f92f701028c61d2fd3d8a669c10d2868034 100644 --- a/ui-tag.c +++ b/ui-tag.c @@ -34,8 +34,7 @@ static void print_download_links(char *revname) { html("<tr><th>download</th><td class='sha1'>"); - cgit_print_snapshot_links(ctx.qry.repo, ctx.qry.head, - revname, ctx.repo->snapshots); + cgit_print_snapshot_links(ctx.repo, ctx.qry.head, revname); html("</td></tr>"); }