]> gitweb.ps.run Git - ps-cgit/blobdiff - cgit.c
Prepare for 'about site' page / add 'root-readme' option to cgitrc
[ps-cgit] / cgit.c
diff --git a/cgit.c b/cgit.c
index bbde64b04ad566b8c7bc44a3f953bb979ffa3f41..a402758fab53bc2c099e7b803fa8deee68226250 100644 (file)
--- a/cgit.c
+++ b/cgit.c
@@ -21,6 +21,8 @@ void config_cb(const char *name, const char *value)
                ctx.cfg.root_title = xstrdup(value);
        else if (!strcmp(name, "root-desc"))
                ctx.cfg.root_desc = xstrdup(value);
+       else if (!strcmp(name, "root-readme"))
+               ctx.cfg.root_readme = xstrdup(value);
        else if (!strcmp(name, "css"))
                ctx.cfg.css = xstrdup(value);
        else if (!strcmp(name, "logo"))
@@ -307,7 +309,16 @@ static void process_request(struct cgit_context *ctx)
                return;
        }
 
-       if (cmd->want_repo && prepare_repo_cmd(ctx))
+       if (cmd->want_repo && !ctx->repo) {
+               cgit_print_http_headers(ctx);
+               cgit_print_docstart(ctx);
+               cgit_print_pageheader(ctx);
+               cgit_print_error(fmt("No repository selected"));
+               cgit_print_docend();
+               return;
+       }
+
+       if (ctx->repo && prepare_repo_cmd(ctx))
                return;
 
        if (cmd->want_layout) {