Author: Lars Hjemli <hjemli@gmail.com>
cgit.c: make print_repolist() and print_repo() reusable for caching Signed-off-by: Lars Hjemli <hjemli@gmail.com>
cgit.c | 24 ++++++++++++------------
diff --git a/cgit.c b/cgit.c index 97f5e085512b0409bb1bc7af016d4ff7c05ea0be..db96905ca90dae96e6a4e467df23feb750e14b34 100644 --- a/cgit.c +++ b/cgit.c @@ -416,26 +416,26 @@ const struct cgit_repo *ra = a, *rb = b; return strcmp(ra->url, rb->url); } -void print_repo(struct cgit_repo *repo) +void print_repo(FILE *f, struct cgit_repo *repo) { - printf("repo.url=%s\n", repo->url); - printf("repo.name=%s\n", repo->name); - printf("repo.path=%s\n", repo->path); + fprintf(f, "repo.url=%s\n", repo->url); + fprintf(f, "repo.name=%s\n", repo->name); + fprintf(f, "repo.path=%s\n", repo->path); if (repo->owner) - printf("repo.owner=%s\n", repo->owner); + fprintf(f, "repo.owner=%s\n", repo->owner); if (repo->desc) - printf("repo.desc=%s\n", repo->desc); + fprintf(f, "repo.desc=%s\n", repo->desc); if (repo->readme) - printf("repo.readme=%s\n", repo->readme); - printf("\n"); + fprintf(f, "repo.readme=%s\n", repo->readme); + fprintf(f, "\n"); } -void print_repolist(struct cgit_repolist *list) +void print_repolist(FILE *f, struct cgit_repolist *list, int start) { int i; - for(i = 0; i < list->count; i++) - print_repo(&list->repos[i]); + for(i = start; i < list->count; i++) + print_repo(f, &list->repos[i]); } @@ -482,7 +482,7 @@ } if (scan) { qsort(cgit_repolist.repos, cgit_repolist.count, sizeof(struct cgit_repo), cmp_repos); - print_repolist(&cgit_repolist); + print_repolist(stdout, &cgit_repolist, 0); exit(0); } }