]> granicus.if.org Git - cgit/commitdiff
cmd: redirect empty about/ to homepage or summary
authorJason A. Donenfeld <Jason@zx2c4.com>
Mon, 22 Feb 2016 15:33:49 +0000 (16:33 +0100)
committerJason A. Donenfeld <Jason@zx2c4.com>
Mon, 22 Feb 2016 17:40:15 +0000 (18:40 +0100)
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
cmd.c

diff --git a/cmd.c b/cmd.c
index 3093c62a5f1fc581e35d86c0d2f265cf0e4b4091..0375c5a53c5dfaad80a9adbc192903be0b5ca1c4 100644 (file)
--- a/cmd.c
+++ b/cmd.c
@@ -47,8 +47,17 @@ static void about_fn(void)
                        cgit_redirect(redirect, true);
                        free(currenturl);
                        free(redirect);
-               } else
+               } else if (ctx.repo->readme.nr)
                        cgit_print_repo_readme(ctx.qry.path);
+               else if (ctx.repo->homepage)
+                       cgit_redirect(ctx.repo->homepage, false);
+               else {
+                       char *currenturl = cgit_currenturl();
+                       char *redirect = fmtalloc("%s../", currenturl);
+                       cgit_redirect(redirect, false);
+                       free(currenturl);
+                       free(redirect);
+               }
        } else
                cgit_print_site_readme();
 }