[RFC/PATCH 4/7] ui-shared: use the same snapshot logic as ui-refs
John Keeping
john at keeping.me.uk
Sat Mar 31 17:35:51 CEST 2018
Make snapshot links in the commit UI use the same prefix algorithm as
those in the summary UI, so that refs starting with the snapshot prefix
are used as-is rather than composed with the prefix repeated.
Signed-off-by: John Keeping <john at keeping.me.uk>
---
ui-shared.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/ui-shared.c b/ui-shared.c
index 0375006..588f0bf 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -1114,9 +1114,15 @@ void cgit_print_snapshot_links(const struct cgit_repo *repo, const char *ref)
{
const struct cgit_snapshot_format* f;
struct strbuf filename = STRBUF_INIT;
+ const char *basename;
size_t prefixlen;
- cgit_compose_snapshot_prefix(&filename, cgit_snapshot_prefix(repo), ref);
+ basename = cgit_snapshot_prefix(repo);
+ if (starts_with(ref, basename))
+ strbuf_addstr(&filename, ref);
+ else
+ cgit_compose_snapshot_prefix(&filename, basename, ref);
+
prefixlen = filename.len;
for (f = cgit_snapshot_formats; f->suffix; f++) {
if (!(repo->snapshots & f->bit))
--
2.16.3
More information about the CGit
mailing list