From bd1b281478c8d8ab45f723ac5818d58da4a64dd1 Mon Sep 17 00:00:00 2001 From: John Keeping Date: Sat, 31 Mar 2018 14:05:02 +0100 Subject: 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 Reviewed-by: Christian Hesse --- ui-commit.c | 3 +-- ui-shared.c | 8 ++++---- ui-shared.h | 4 ++-- ui-tag.c | 3 +-- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/ui-commit.c b/ui-commit.c index abf58f6..ea17461 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -110,8 +110,7 @@ void cgit_print_commit(char *hex, const char *prefix) } if (ctx.repo->snapshots) { html("download"); - 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(""); } html("\n"); diff --git a/ui-shared.c b/ui-shared.c index 0c6ca60..e719c1b 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -1103,17 +1103,17 @@ void cgit_compose_snapshot_prefix(struct strbuf *filename, const char *base, 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 b760a17..b3eb8c5 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 2c216d0..89a46f9 100644 --- a/ui-tag.c +++ b/ui-tag.c @@ -34,8 +34,7 @@ static void print_tag_content(char *buf) static void print_download_links(char *revname) { html("download"); - 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(""); } -- cgit