about summary refs log tree commit diff
path: root/cgit.c
diff options
context:
space:
mode:
authorJohan Herland <johan@herland.net>2010-11-15 20:41:00 +0100
committerLars Hjemli <hjemli@gmail.com>2011-02-19 14:25:14 +0100
commitdf522794c38934be3229a11e0e2432a1f2a3bc8d (patch)
treef11aef6d303a5327303a4471d47444764bea53d8 /cgit.c
parentscan_path(): Improve handling of inaccessible directories (diff)
downloadcgit-pink-df522794c38934be3229a11e0e2432a1f2a3bc8d.tar.gz
cgit-pink-df522794c38934be3229a11e0e2432a1f2a3bc8d.zip
scan_path(): Do not recurse into hidden directories by default
Paths that start with a period ('.') are considered hidden in the Unix world.
scan_path() should arguably not recurse into these directories by default.
This patch makes it so, and introduces the "scan-hidden-path" config variable
for overriding the new default and revert to the old behaviour (scanning _all_
directories, including hidden .directories).

Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Lars Hjemli <larsh@prediktor.no>
Diffstat (limited to '')
-rw-r--r--cgit.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/cgit.c b/cgit.c
index 412fbf0..6a76281 100644
--- a/cgit.c
+++ b/cgit.c
@@ -195,6 +195,8 @@ void config_cb(const char *name, const char *value)
 				      ctx.cfg.project_list, repo_config);
 		else
 			scan_tree(expand_macros(value), repo_config);
+	else if (!strcmp(name, "scan-hidden-path"))
+		ctx.cfg.scan_hidden_path = atoi(value);
 	else if (!strcmp(name, "section-from-path"))
 		ctx.cfg.section_from_path = atoi(value);
 	else if (!strcmp(name, "source-filter"))
@@ -315,6 +317,7 @@ static void prepare_context(struct cgit_context *ctx)
 	ctx->cfg.robots = "index, nofollow";
 	ctx->cfg.root_title = "Git repository browser";
 	ctx->cfg.root_desc = "a fast webinterface for the git dscm";
+	ctx->cfg.scan_hidden_path = 0;
 	ctx->cfg.script_name = CGIT_SCRIPT_NAME;
 	ctx->cfg.section = "";
 	ctx->cfg.summary_branches = 10;