diff options
-rw-r--r-- | cgit.c | 1 | ||||
-rw-r--r-- | ui-shared.c | 7 |
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 | ||
590 | const char *fallback_cmd = "repolist"; | ||
591 | |||
590 | char *hc(struct cgit_cmd *cmd, const char *page) | 592 | char *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 | ||
595 | void cgit_print_pageheader(struct cgit_context *ctx) | 597 | void 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='"); |