]> git.cameronkatri.com Git - cgit.git/blobdiff - scan-tree.c
Update copyright information
[cgit.git] / scan-tree.c
index beb584b5952eb9407e90fc8c580ffffdb5dc5676..1a2ea87e5008afe396df231114fabb59df8ce1b2 100644 (file)
@@ -1,7 +1,6 @@
 /* scan-tree.c
- * 
- * Copyright (C) 2008-2009 Lars Hjemli
- * Copyright (C) 2010, 2012 Jason A. Donenfeld <Jason@zx2c4.com>
+ *
+ * Copyright (C) 2006-2014 cgit Development Team <cgit@lists.zx2c4.com>
  *
  * Licensed under GNU General Public License v2
  *   (see COPYING for full license text)
@@ -113,6 +112,8 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn)
 
        if (!strcmp(rel.buf + rel.len - 5, "/.git"))
                strbuf_setlen(&rel, rel.len - 5);
+       else if (rel.len && rel.buf[rel.len - 1] == '/')
+               strbuf_setlen(&rel, rel.len - 1);
 
        repo = cgit_add_repo(rel.buf);
        config_fn = fn;
@@ -145,21 +146,15 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn)
                strbuf_setlen(path, pathlen);
        }
 
-       if (!repo->readme) {
-               strbuf_addstr(path, "README.html");
-               if (!stat(path->buf, &st))
-                       repo->readme = "README.html";
-               strbuf_setlen(path, pathlen);
-       }
        if (ctx.cfg.section_from_path) {
-               n  = ctx.cfg.section_from_path;
+               n = ctx.cfg.section_from_path;
                if (n > 0) {
-                       slash = rel.buf;
-                       while (slash && n && (slash = strchr(slash, '/')))
+                       slash = rel.buf - 1;
+                       while (slash && n && (slash = strchr(slash + 1, '/')))
                                n--;
                } else {
                        slash = rel.buf + rel.len;
-                       while (slash && n && (slash = xstrrchr(rel.buf, slash, '/')))
+                       while (slash && n && (slash = xstrrchr(rel.buf, slash - 1, '/')))
                                n++;
                }
                if (slash && !n) {
@@ -234,8 +229,6 @@ end:
        closedir(dir);
 }
 
-#define lastc(s) s[strlen(s) - 1]
-
 void scan_projects(const char *path, const char *projectsfile, repo_config_fn fn)
 {
        struct strbuf line = STRBUF_INIT;