]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-shared.c
Avoid SEGFAULT on invalid requests
[ps-cgit] / ui-shared.c
index 224e5f3b2f3da88d89a0ea3034b9182cf7775cd7..76cd00d3b146a8a1401f7e3be7b6fcaacc48dab3 100644 (file)
@@ -577,15 +577,20 @@ void add_hidden_formfields(int incl_head, int incl_search, char *page)
        }
 }
 
+const char *fallback_cmd = "repolist";
+
 char *hc(struct cgit_cmd *cmd, const char *page)
 {
-       return (strcmp(cmd->name, page) ? NULL : "active");
+       return (strcmp(cmd ? cmd->name : fallback_cmd, page) ? NULL : "active");
 }
 
 void cgit_print_pageheader(struct cgit_context *ctx)
 {
        struct cgit_cmd *cmd = cgit_get_cmd(ctx);
 
+       if (!cmd && ctx->repo)
+               fallback_cmd = "summary";
+
        html("<table id='header'>\n");
        html("<tr>\n");
        html("<td class='logo' rowspan='2'><a href='");