about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-05-20 21:45:12 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2019-05-20 21:53:16 +0200
commit54c407a74a35d4ee9ffae94cc5bc9096c9f7f54a (patch)
tree2bb3e863ea5ceb8f06e541b62a17bef305adbfd9
parentui-diff,ui-tag: don't use htmlf with non-formatted strings (diff)
downloadcgit-pink-54c407a74a35d4ee9ffae94cc5bc9096c9f7f54a.tar.gz
cgit-pink-54c407a74a35d4ee9ffae94cc5bc9096c9f7f54a.zip
ui-shared: restrict to 15 levels
Perhaps a more ideal version of this would be to not print breadcrumbs
at all for paths that don't exist in the given repo at the given oid.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Reported-by: Fydor Wire Snark <wsnark@tuta.io>
-rw-r--r--ui-shared.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ui-shared.c b/ui-shared.c
index d27a5fd..d2358f2 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -945,12 +945,13 @@ static void cgit_print_path_crumbs(char *path)
 {
 	char *old_path = ctx.qry.path;
 	char *p = path, *q, *end = path + strlen(path);
+	int levels = 0;
 
 	ctx.qry.path = NULL;
 	cgit_self_link("root", NULL, NULL);
 	ctx.qry.path = p = path;
 	while (p < end) {
-		if (!(q = strchr(p, '/')))
+		if (!(q = strchr(p, '/')) || levels > 15)
 			q = end;
 		*q = '\0';
 		html_txt("/");
@@ -958,6 +959,7 @@ static void cgit_print_path_crumbs(char *path)
 		if (q < end)
 			*q = '/';
 		p = q + 1;
+		++levels;
 	}
 	ctx.qry.path = old_path;
 }
tag index in HTMLJune McEnroe 2021-01-12Add htagml -xJune McEnroe 2021-01-12Prevent matching the same tag twiceJune McEnroe 2021-01-12Process htagml file line by lineJune McEnroe 2021-01-12Split fields by tab onlyJune McEnroe 2021-01-12List both Makefile and html.sh under README.7June McEnroe 2021-01-12Add htagml exampleJune McEnroe 2021-01-12Use mandoc and htagml for bin htmlJune McEnroe 2021-01-12Add htagmlJune McEnroe 2021-01-12Replace causal.agency with a simple mdoc pageJune McEnroe 2021-01-11Publish "Using vi"June McEnroe 2021-01-11Enable diff.colorMovedJune McEnroe 2021-01-10Set less search case-insensitiveJune McEnroe 2021-01-10Set EXINITJune McEnroe 2021-01-09Add c -t flag to print expression typeJune McEnroe 2021-01-05Update taglineJune McEnroe