aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Gehn2011-03-26 09:51:39 +0100
committerLars Hjemli2011-03-26 11:44:16 +0100
commitf15c5833d2190bc62e0e1e3e9753ef33230ecd53 (patch)
treea81dd18bd692d7a5fb00c38910b871c5ffc29464
parentcc59ee502646dc4e3d0f8bbe29b24c7fa3f0d2dd (diff)
downloadcgit-f15c5833d2190bc62e0e1e3e9753ef33230ecd53.tar.gz
cgit-f15c5833d2190bc62e0e1e3e9753ef33230ecd53.tar.bz2
cgit-f15c5833d2190bc62e0e1e3e9753ef33230ecd53.zip
Fix crash when projectsfile cannot be opened
This patch makes cgit properly abort in case the projectsfile cannot be opened. Without the added return cgit continues using the projects pointer which is NULL and thus causes a segfault.
-rw-r--r--scan-tree.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/scan-tree.c b/scan-tree.c
index 627af1b..e5a4baf 100644
--- a/scan-tree.c
+++ b/scan-tree.c
@@ -219,6 +219,7 @@ void scan_projects(const char *path, const char *projectsfile, repo_config_fn fn
219 if (!projects) { 219 if (!projects) {
220 fprintf(stderr, "Error opening projectsfile %s: %s (%d)\n", 220 fprintf(stderr, "Error opening projectsfile %s: %s (%d)\n",
221 projectsfile, strerror(errno), errno); 221 projectsfile, strerror(errno), errno);
222 return;
222 } 223 }
223 while (fgets(line, sizeof(line), projects) != NULL) { 224 while (fgets(line, sizeof(line), projects) != NULL) {
224 for (z = &lastc(line); 225 for (z = &lastc(line);