X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/7ef1a47991fee31c1eb1e1292bf715d577042f35..39735d95ca8775204ed4c5f306009707f7da79c6:/ui-repolist.c diff --git a/ui-repolist.c b/ui-repolist.c index 4f52e0f..30915df 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -15,7 +15,7 @@ static time_t read_agefile(char *path) { time_t result; size_t size; - char *buf; + char *buf = NULL; struct strbuf date_buf = STRBUF_INIT; if (readfile(path, &buf, &size)) { @@ -79,7 +79,7 @@ static void print_modtime(struct cgit_repo *repo) { time_t t; if (get_repo_modtime(repo, &t)) - cgit_print_age(t, -1, NULL); + cgit_print_age(t, 0, -1); } static int is_match(struct cgit_repo *repo) @@ -106,16 +106,38 @@ static int is_in_url(struct cgit_repo *repo) return 0; } +static int is_visible(struct cgit_repo *repo) +{ + if (repo->hide || repo->ignore) + return 0; + if (!(is_match(repo) && is_in_url(repo))) + return 0; + return 1; +} + +static int any_repos_visible(void) +{ + int i; + + for (i = 0; i < cgit_repolist.count; i++) { + if (is_visible(&cgit_repolist.repos[i])) + return 1; + } + return 0; +} + static void print_sort_header(const char *title, const char *sort) { + char *currenturl = cgit_currenturl(); html("