iPrint the number of remaining commits - stagit-gopher - A git gopher frontend. (mirror) Err bitreich.org 70
hgit clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ URL:git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ bitreich.org 70
1Log /scm/stagit-gopher/log.gph bitreich.org 70
1Files /scm/stagit-gopher/files.gph bitreich.org 70
1Refs /scm/stagit-gopher/refs.gph bitreich.org 70
1Tags /scm/stagit-gopher/tag bitreich.org 70
1README /scm/stagit-gopher/file/README.gph bitreich.org 70
1LICENSE /scm/stagit-gopher/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 42613555baad830fd0fe65798e22ac65c18129e9 /scm/stagit-gopher/commit/42613555baad830fd0fe65798e22ac65c18129e9.gph bitreich.org 70
1parent 9d738c87ca291d354f215c45469a6ba983474f73 /scm/stagit-gopher/commit/9d738c87ca291d354f215c45469a6ba983474f73.gph bitreich.org 70
hAuthor: Quentin Rameau <quinq@fifth.space> URL:mailto:quinq@fifth.space bitreich.org 70
iDate: Tue, 16 Nov 2021 21:10:02 +0100 Err bitreich.org 70
i Err bitreich.org 70
iPrint the number of remaining commits Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M stagit-gopher.c | 25 ++++++++++++++++--------- Err bitreich.org 70
i Err bitreich.org 70
i1 file changed, 16 insertions(+), 9 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/stagit-gopher.c b/stagit-gopher.c /scm/stagit-gopher/file/stagit-gopher.c.gph bitreich.org 70
i@@ -75,7 +75,7 @@ static char *licensefiles[] = { "HEAD:LICENSE", "HEAD:LICENSE.md", "HEAD:COPYING Err bitreich.org 70
i static char *license; Err bitreich.org 70
i static char *readmefiles[] = { "HEAD:README", "HEAD:README.md" }; Err bitreich.org 70
i static char *readme; Err bitreich.org 70
i-static long long nlogcommits = -1; /* < 0 indicates not used */ Err bitreich.org 70
i+static long long nlogcommits = -1; /* -1 indicates not used */ Err bitreich.org 70
i Err bitreich.org 70
i /* cache */ Err bitreich.org 70
i static git_oid lastoid; Err bitreich.org 70
i@@ -832,6 +832,7 @@ writelog(FILE *fp, const git_oid *oid) Err bitreich.org 70
i git_oid id; Err bitreich.org 70
i char path[PATH_MAX], oidstr[GIT_OID_HEXSZ + 1]; Err bitreich.org 70
i FILE *fpfile; Err bitreich.org 70
i+ size_t remcommits = 0; Err bitreich.org 70
i int r; Err bitreich.org 70
i Err bitreich.org 70
i git_revwalk_new(&w, repo); Err bitreich.org 70
i@@ -849,19 +850,19 @@ writelog(FILE *fp, const git_oid *oid) Err bitreich.org 70
i Err bitreich.org 70
i /* optimization: if there are no log lines to write and Err bitreich.org 70
i the commit file already exists: skip the diffstat */ Err bitreich.org 70
i- if (!nlogcommits && !r) Err bitreich.org 70
i- continue; Err bitreich.org 70
i+ if (!nlogcommits) { Err bitreich.org 70
i+ remcommits++; Err bitreich.org 70
i+ if (!r) Err bitreich.org 70
i+ continue; Err bitreich.org 70
i+ } Err bitreich.org 70
i Err bitreich.org 70
i if (!(ci = commitinfo_getbyoid(&id))) Err bitreich.org 70
i break; Err bitreich.org 70
i Err bitreich.org 70
i- if (nlogcommits < 0) { Err bitreich.org 70
i+ if (nlogcommits != 0) { Err bitreich.org 70
i writelogline(fp, ci); Err bitreich.org 70
i- } else if (nlogcommits > 0) { Err bitreich.org 70
i- writelogline(fp, ci); Err bitreich.org 70
i- nlogcommits--; Err bitreich.org 70
i- if (!nlogcommits && ci->parentoid[0]) Err bitreich.org 70
i- fprintf(fp, "%16.16s More commits remaining [...]\n", ""); Err bitreich.org 70
i+ if (nlogcommits > 0) Err bitreich.org 70
i+ nlogcommits--; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (cachefile) Err bitreich.org 70
i@@ -884,6 +885,12 @@ err: Err bitreich.org 70
i } Err bitreich.org 70
i git_revwalk_free(w); Err bitreich.org 70
i Err bitreich.org 70
i+ if (nlogcommits == 0 && remcommits != 0) { Err bitreich.org 70
i+ fprintf(fp, "%16.16s " Err bitreich.org 70
i+ "%zu more commits remaining, fetch the repository\n", Err bitreich.org 70
i+ "", remcommits); Err bitreich.org 70
i+ } Err bitreich.org 70
i+ Err bitreich.org 70
i return 0; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
.
Response:
text/plain