diff options
-rw-r--r-- | ui-repolist.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/ui-repolist.c b/ui-repolist.c index 8d982c4..4912fa5 100644 --- a/ui-repolist.c +++ b/ui-repolist.c | |||
@@ -106,6 +106,15 @@ static int is_in_url(struct cgit_repo *repo) | |||
106 | return 0; | 106 | return 0; |
107 | } | 107 | } |
108 | 108 | ||
109 | static int is_visible(struct cgit_repo *repo) | ||
110 | { | ||
111 | if (repo->hide || repo->ignore) | ||
112 | return 0; | ||
113 | if (!(is_match(repo) && is_in_url(repo))) | ||
114 | return 0; | ||
115 | return 1; | ||
116 | } | ||
117 | |||
109 | static void print_sort_header(const char *title, const char *sort) | 118 | static void print_sort_header(const char *title, const char *sort) |
110 | { | 119 | { |
111 | char *currenturl = cgit_currenturl(); | 120 | char *currenturl = cgit_currenturl(); |
@@ -278,9 +287,7 @@ void cgit_print_repolist(void) | |||
278 | html("<table summary='repository list' class='list nowrap'>"); | 287 | html("<table summary='repository list' class='list nowrap'>"); |
279 | for (i = 0; i < cgit_repolist.count; i++) { | 288 | for (i = 0; i < cgit_repolist.count; i++) { |
280 | ctx.repo = &cgit_repolist.repos[i]; | 289 | ctx.repo = &cgit_repolist.repos[i]; |
281 | if (ctx.repo->hide || ctx.repo->ignore) | 290 | if (!is_visible(ctx.repo)) |
282 | continue; | ||
283 | if (!(is_match(ctx.repo) && is_in_url(ctx.repo))) | ||
284 | continue; | 291 | continue; |
285 | hits++; | 292 | hits++; |
286 | if (hits <= ctx.qry.ofs) | 293 | if (hits <= ctx.qry.ofs) |