snapshot: support special value 'all' to enable all formats
Signed-off-by: Christian Hesse <mail@eworm.de>
Reviewed-by: John Keeping <john@keeping.me.uk>
diff --git a/cgitrc.5.txt b/cgitrc.5.txt
index a9d3d0a..3bfacfa 100644
--- a/cgitrc.5.txt
+++ b/cgitrc.5.txt
@@ -429,6 +429,7 @@
Text which specifies the default set of snapshot formats that cgit
generates links for. The value is a space-separated list of zero or
more of the values "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip".
+ The special value "all" enables all snapshot formats.
Default value: none.
source-filter::
diff --git a/shared.c b/shared.c
index 21ac8f4..0a11e68 100644
--- a/shared.c
+++ b/shared.c
@@ -390,6 +390,9 @@
if (atoi(str))
return 1;
+ if (strcmp(str, "all") == 0)
+ return INT_MAX;
+
string_list_split(&tokens, str, ' ', -1);
string_list_remove_empty_items(&tokens, 0);