X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/9ecde6568a9e39c942f4c5585ffa494c5df870e4..a2ddc10479ec463708e422ca5ce7ec02c22a7d02:/cgit.c diff --git a/cgit.c b/cgit.c index 67ad103..9b4815d 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); @@ -113,7 +116,7 @@ static void cgit_print_repo_page(struct cacheitem *item) } else if (!strcmp(cgit_query_page, "tree")) { cgit_print_tree(cgit_query_head, cgit_query_sha1, cgit_query_path); } else if (!strcmp(cgit_query_page, "commit")) { - cgit_print_commit(cgit_query_sha1); + cgit_print_commit(cgit_query_head); } else if (!strcmp(cgit_query_page, "view")) { cgit_print_view(cgit_query_sha1, cgit_query_path); } else if (!strcmp(cgit_query_page, "diff")) { @@ -244,6 +247,8 @@ int main(int argc, const char **argv) cgit_repolist.repos = NULL; cgit_read_config(CGIT_CONFIG, cgit_global_config_cb); + if (getenv("SCRIPT_NAME")) + cgit_script_name = xstrdup(getenv("SCRIPT_NAME")); if (getenv("QUERY_STRING")) cgit_querystring = xstrdup(getenv("QUERY_STRING")); cgit_parse_args(argc, argv);