Diffstat (limited to 'shared.c')
| -rw-r--r-- | shared.c | 61 |
1 files changed, 31 insertions, 30 deletions
@@ -8,7 +8,8 @@ #include "cgit.h" -struct cgit_repolist cgit_repolist; +struct repolist cgit_repolist; +struct repoinfo *cgit_repo; struct cgit_context ctx; int cgit_cmd; @@ -72,9 +73,9 @@ int chk_non_negative(int result, char *msg) return result; } -struct cgit_repo *add_repo(const char *url) +struct repoinfo *add_repo(const char *url) { - struct cgit_repo *ret; + struct repoinfo *ret; if (++cgit_repolist.count > cgit_repolist.length) { if (cgit_repolist.length == 0) @@ -83,7 +84,7 @@ struct cgit_repo *add_repo(const char *url) cgit_repolist.length *= 2; cgit_repolist.repos = xrealloc(cgit_repolist.repos, cgit_repolist.length * - sizeof(struct cgit_repo)); + sizeof(struct repoinfo)); } ret = &cgit_repolist.repos[cgit_repolist.count-1]; @@ -102,10 +103,10 @@ struct cgit_repo *add_repo(const char *url) return ret; } -struct cgit_repo *cgit_get_repoinfo(const char *url) +struct repoinfo *cgit_get_repoinfo(const char *url) { int i; - struct cgit_repo *repo; + struct repoinfo *repo; for (i=0; i<cgit_repolist.count; i++) { repo = &cgit_repolist.repos[i]; @@ -178,32 +179,32 @@ void cgit_global_config_cb(const char *name, const char *value) else if (!strcmp(name, "repo.group")) ctx.cfg.repo_group = xstrdup(value); else if (!strcmp(name, "repo.url")) - ctx.repo = add_repo(value); + cgit_repo = add_repo(value); else if (!strcmp(name, "repo.name")) - ctx.repo->name = xstrdup(value); - else if (ctx.repo && !strcmp(name, "repo.path")) - ctx.repo->path = trim_end(value, '/'); - else if (ctx.repo && !strcmp(name, "repo.clone-url")) - ctx.repo->clone_url = xstrdup(value); - else if (ctx.repo && !strcmp(name, "repo.desc")) - ctx.repo->desc = xstrdup(value); - else if (ctx.repo && !strcmp(name, "repo.owner")) - ctx.repo->owner = xstrdup(value); - else if (ctx.repo && !strcmp(name, "repo.defbranch")) - ctx.repo->defbranch = xstrdup(value); - else if (ctx.repo && !strcmp(name, "repo.snapshots")) - ctx.repo->snapshots = ctx.cfg.snapshots & cgit_parse_snapshots_mask(value); /* XXX: &? */ - else if (ctx.repo && !strcmp(name, "repo.enable-log-filecount")) - ctx.repo->enable_log_filecount = ctx.cfg.enable_log_filecount * atoi(value); - else if (ctx.repo && !strcmp(name, "repo.enable-log-linecount")) - ctx.repo->enable_log_linecount = ctx.cfg.enable_log_linecount * atoi(value); - else if (ctx.repo && !strcmp(name, "repo.module-link")) - ctx.repo->module_link= xstrdup(value); - else if (ctx.repo && !strcmp(name, "repo.readme") && value != NULL) { + cgit_repo->name = xstrdup(value); + else if (cgit_repo && !strcmp(name, "repo.path")) + cgit_repo->path = trim_end(value, '/'); + else if (cgit_repo && !strcmp(name, "repo.clone-url")) + cgit_repo->clone_url = xstrdup(value); + else if (cgit_repo && !strcmp(name, "repo.desc")) + cgit_repo->desc = xstrdup(value); + else if (cgit_repo && !strcmp(name, "repo.owner")) + cgit_repo->owner = xstrdup(value); + else if (cgit_repo && !strcmp(name, "repo.defbranch")) + cgit_repo->defbranch = xstrdup(value); + else if (cgit_repo && !strcmp(name, "repo.snapshots")) + cgit_repo->snapshots = ctx.cfg.snapshots & cgit_parse_snapshots_mask(value); /* XXX: &? */ + else if (cgit_repo && !strcmp(name, "repo.enable-log-filecount")) + cgit_repo->enable_log_filecount = ctx.cfg.enable_log_filecount * atoi(value); + else if (cgit_repo && !strcmp(name, "repo.enable-log-linecount")) + cgit_repo->enable_log_linecount = ctx.cfg.enable_log_linecount * atoi(value); + else if (cgit_repo && !strcmp(name, "repo.module-link")) + cgit_repo->module_link= xstrdup(value); + else if (cgit_repo && !strcmp(name, "repo.readme") && value != NULL) { if (*value == '/') - ctx.repo->readme = xstrdup(value); + cgit_repo->readme = xstrdup(value); else - ctx.repo->readme = xstrdup(fmt("%s/%s", ctx.repo->path, value)); + cgit_repo->readme = xstrdup(fmt("%s/%s", cgit_repo->path, value)); } else if (!strcmp(name, "include")) cgit_read_config(value, cgit_global_config_cb); } @@ -212,7 +213,7 @@ void cgit_querystring_cb(const char *name, const char *value) { if (!strcmp(name,"r")) { ctx.qry.repo = xstrdup(value); - ctx.repo = cgit_get_repoinfo(value); + cgit_repo = cgit_get_repoinfo(value); } else if (!strcmp(name, "p")) { ctx.qry.page = xstrdup(value); cgit_cmd = cgit_get_cmd_index(value); |