diff --git a/cgit.c b/cgit.c index 3c11ff0..b282a67 100644 --- a/cgit.c +++ b/cgit.c @@ -65,6 +65,9 @@ static void cgit_print_repo_page(struct cacheitem *item) char *title; int show_search; + if (!cgit_query_head) + cgit_query_head = cgit_repo->defbranch; + if (chdir(cgit_repo->path)) { title = fmt("%s - %s", cgit_root_title, "Bad request"); cgit_print_docstart(title, item); diff --git a/cgit.h b/cgit.h index f5906ad..ac710a6 100644 --- a/cgit.h +++ b/cgit.h @@ -35,6 +35,7 @@ struct repoinfo { char *path; char *desc; char *owner; + char *defbranch; char *module_link; int snapshots; }; diff --git a/shared.c b/shared.c index 8505397..a1e1acd 100644 --- a/shared.c +++ b/shared.c @@ -32,10 +32,6 @@ int cgit_cache_max_create_time = 5; int cgit_max_msg_len = 60; int cgit_max_commit_count = 50; -char *cgit_repo_name = NULL; -char *cgit_repo_desc = NULL; -char *cgit_repo_owner = NULL; - int cgit_query_has_symref = 0; int cgit_query_has_sha1 = 0; @@ -86,6 +82,7 @@ struct repoinfo *add_repo(const char *url) ret->path = NULL; ret->desc = NULL; ret->owner = NULL; + ret->defbranch = "master"; ret->snapshots = cgit_snapshots; ret->module_link = cgit_module_link; return ret; @@ -133,6 +130,8 @@ void cgit_global_config_cb(const char *name, const char *value) 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 = atoi(value); else if (cgit_repo && !strcmp(name, "repo.module-link")) @@ -141,16 +140,6 @@ void cgit_global_config_cb(const char *name, const char *value) cgit_read_config(value, cgit_global_config_cb); } -void cgit_repo_config_cb(const char *name, const char *value) -{ - if (!strcmp(name, "name")) - cgit_repo_name = xstrdup(value); - else if (!strcmp(name, "desc")) - cgit_repo_desc = xstrdup(value); - else if (!strcmp(name, "owner")) - cgit_repo_owner = xstrdup(value); -} - void cgit_querystring_cb(const char *name, const char *value) { if (!strcmp(name,"r")) {