X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/d14c5f6d3ac827e7b46831c4151638ab4b638ae1..420712ac2531f65a2b94d5ec6d8e03de6942331e:/ui-log.c diff --git a/ui-log.c b/ui-log.c index 701c392..dce50f7 100644 --- a/ui-log.c +++ b/ui-log.c @@ -82,6 +82,11 @@ static void cgit_print_commit_shortlog(struct commit *commit) html_link_close(); html(""); html_txt(author); + html("tree"); html("\n"); } @@ -90,7 +95,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt) struct rev_info rev; struct commit *commit; const char *argv[2] = {NULL, tip}; - int n = 0; + int i; init_revisions(&rev, NULL); rev.abbrev = DEFAULT_ABBREV; @@ -102,8 +107,19 @@ void cgit_print_log(const char *tip, int ofs, int cnt) html("

Log

"); html(""); - html("\n"); - while ((commit = get_revision(&rev)) != NULL && n++ < 100) { + html("\n"); + + if (ofs<0) + ofs = 0; + + for (i = 0; i < ofs && (commit = get_revision(&rev)) != NULL; i++) { + free(commit->buffer); + commit->buffer = NULL; + free_commit_list(commit->parents); + commit->parents = NULL; + } + + for (i = 0; i < cnt && (commit = get_revision(&rev)) != NULL; i++) { cgit_print_commit_shortlog(commit); free(commit->buffer); commit->buffer = NULL; @@ -111,5 +127,21 @@ void cgit_print_log(const char *tip, int ofs, int cnt) commit->parents = NULL; } html("
DateMessageAuthor
DateMessageAuthorLink
\n"); + + html("
"); + if (ofs > 0) { + html(" [prev] "); + } + + if ((commit = get_revision(&rev)) != NULL) { + html(" [next] "); + } + html("
"); }