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);
} 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")) {
cgit_repolist.count = 0;
cgit_repolist.repos = NULL;
- cgit_read_config("/etc/cgitrc", cgit_global_config_cb);
+ 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);