about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--cgit.c1
-rw-r--r--ui-shared.c7
2 files changed, 6 insertions, 2 deletions
diff --git a/cgit.c b/cgit.c index d1cee58..f35f605 100644 --- a/cgit.c +++ b/cgit.c
@@ -293,7 +293,6 @@ static void process_request(void *cbdata)
293 cmd = cgit_get_cmd(ctx); 293 cmd = cgit_get_cmd(ctx);
294 if (!cmd) { 294 if (!cmd) {
295 ctx->page.title = "cgit error"; 295 ctx->page.title = "cgit error";
296 ctx->repo = NULL;
297 cgit_print_http_headers(ctx); 296 cgit_print_http_headers(ctx);
298 cgit_print_docstart(ctx); 297 cgit_print_docstart(ctx);
299 cgit_print_pageheader(ctx); 298 cgit_print_pageheader(ctx);
diff --git a/ui-shared.c b/ui-shared.c index 95dfeb4..fba1ba6 100644 --- a/ui-shared.c +++ b/ui-shared.c
@@ -587,15 +587,20 @@ void add_hidden_formfields(int incl_head, int incl_search, char *page)
587 } 587 }
588} 588}
589 589
590const char *fallback_cmd = "repolist";
591
590char *hc(struct cgit_cmd *cmd, const char *page) 592char *hc(struct cgit_cmd *cmd, const char *page)
591{ 593{
592 return (strcmp(cmd->name, page) ? NULL : "active"); 594 return (strcmp(cmd ? cmd->name : fallback_cmd, page) ? NULL : "active");
593} 595}
594 596
595void cgit_print_pageheader(struct cgit_context *ctx) 597void cgit_print_pageheader(struct cgit_context *ctx)
596{ 598{
597 struct cgit_cmd *cmd = cgit_get_cmd(ctx); 599 struct cgit_cmd *cmd = cgit_get_cmd(ctx);
598 600
601 if (!cmd && ctx->repo)
602 fallback_cmd = "summary";
603
599 html("<table id='header'>\n"); 604 html("<table id='header'>\n");
600 html("<tr>\n"); 605 html("<tr>\n");
601 html("<td class='logo' rowspan='2'><a href='"); 606 html("<td class='logo' rowspan='2'><a href='");