summaryrefslogtreecommitdiffabout
path: root/scan-tree.c
authorLars Hjemli <hjemli@gmail.com>2011-02-19 13:25:55 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2011-02-19 13:25:55 (UTC)
commitfb9e6d1594a24fe4e551fd57a9c91fd18b14806e (patch) (unidiff)
treebc0b99adcce3a19f127e6eb2509585ed9486831e /scan-tree.c
parent31e1f9af1d46bd7dfdb3b2ac580c0d0cc8dbaa63 (diff)
parentdf522794c38934be3229a11e0e2432a1f2a3bc8d (diff)
downloadcgit-fb9e6d1594a24fe4e551fd57a9c91fd18b14806e.zip
cgit-fb9e6d1594a24fe4e551fd57a9c91fd18b14806e.tar.gz
cgit-fb9e6d1594a24fe4e551fd57a9c91fd18b14806e.tar.bz2
Merge branch 'jh/scan-path'
* jh/scan-path: scan_path(): Do not recurse into hidden directories by default scan_path(): Improve handling of inaccessible directories
Diffstat (limited to 'scan-tree.c') (more/less context) (ignore whitespace changes)
-rw-r--r--scan-tree.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/scan-tree.c b/scan-tree.c
index a0e09ce..627af1b 100644
--- a/scan-tree.c
+++ b/scan-tree.c
@@ -161,3 +161,3 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn)
161{ 161{
162 DIR *dir; 162 DIR *dir = opendir(path);
163 struct dirent *ent; 163 struct dirent *ent;
@@ -166,5 +166,10 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn)
166 166
167 if (!dir) {
168 fprintf(stderr, "Error opening directory %s: %s (%d)\n",
169 path, strerror(errno), errno);
170 return;
171 }
167 if (is_git_dir(path)) { 172 if (is_git_dir(path)) {
168 add_repo(base, path, fn); 173 add_repo(base, path, fn);
169 return; 174 goto end;
170 } 175 }
@@ -172,9 +177,3 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn)
172 add_repo(base, fmt("%s/.git", path), fn); 177 add_repo(base, fmt("%s/.git", path), fn);
173 return; 178 goto end;
174 }
175 dir = opendir(path);
176 if (!dir) {
177 fprintf(stderr, "Error opening directory %s: %s (%d)\n",
178 path, strerror(errno), errno);
179 return;
180 } 179 }
@@ -186,2 +185,4 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn)
186 continue; 185 continue;
186 if (!ctx.cfg.scan_hidden_path)
187 continue;
187 } 188 }
@@ -204,2 +205,3 @@ static void scan_path(const char *base, const char *path, repo_config_fn fn)
204 } 205 }
206end:
205 closedir(dir); 207 closedir(dir);