about summary refs log tree commit diff stats
path: root/ui-snapshot.c
diff options
context:
space:
mode:
authorJohn Keeping2018-03-31 14:20:01 +0100
committerJason A. Donenfeld2018-06-27 18:11:19 +0200
commitc1572bb5ec4540b5008490cf471cc4a5e65ef728 (patch)
tree5f31bf0e4ca63ab94b74a85897d37481474c92a0 /ui-snapshot.c
parentui-snapshot: pass repo into get_ref_from_filename() (diff)
downloadcgit-c1572bb5ec4540b5008490cf471cc4a5e65ef728.tar.gz
cgit-c1572bb5ec4540b5008490cf471cc4a5e65ef728.zip
Add "snapshot-prefix" repo configuration
Allow using a user-specified value for the prefix in snapshot files
instead of the repository basename.  For example, files downloaded from
the linux-stable.git repository should be named linux-$VERSION and not
linux-stable-$VERSION, which can be achieved by setting:

	repo.snapshot-prefix=linux

Signed-off-by: John Keeping <john@keeping.me.uk>
Reviewed-by: Christian Hesse <mail@eworm.de>
Diffstat (limited to 'ui-snapshot.c')
-rw-r--r--ui-snapshot.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ui-snapshot.c b/ui-snapshot.c index 237a75f..b9e2a36 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c
@@ -154,7 +154,7 @@ static const char *get_ref_from_filename(const struct cgit_repo *repo,
154 if (get_oid(snapshot.buf, &oid) == 0) 154 if (get_oid(snapshot.buf, &oid) == 0)
155 goto out; 155 goto out;
156 156
157 reponame = cgit_repobasename(repo->url); 157 reponame = cgit_snapshot_prefix(repo);
158 if (starts_with(snapshot.buf, reponame)) { 158 if (starts_with(snapshot.buf, reponame)) {
159 const char *new_start = snapshot.buf; 159 const char *new_start = snapshot.buf;
160 new_start += strlen(reponame); 160 new_start += strlen(reponame);
@@ -214,7 +214,7 @@ void cgit_print_snapshot(const char *head, const char *hex,
214 hex = head; 214 hex = head;
215 215
216 if (!prefix) 216 if (!prefix)
217 prefix = xstrdup(cgit_repobasename(ctx.repo->url)); 217 prefix = xstrdup(cgit_snapshot_prefix(ctx.repo));
218 218
219 make_snapshot(f, hex, prefix, filename); 219 make_snapshot(f, hex, prefix, filename);
220 free(prefix); 220 free(prefix);