ifix warning with libgit2 v0.99+, remain compatible with older versions - stagit-gemini - Stagit for gemini protocol Openbsd Err thinkerwim.openbsd.amsterdam 70 hgit clone git://thinkerwim.org/stagit-gemini.git URL:git://thinkerwim.org/stagit-gemini.git thinkerwim.org 70 1Log /git/stagit-gemini/log.gph thinkerwim.org 70 1Files /git/stagit-gemini/files.gph thinkerwim.org 70 1Refs /git/stagit-gemini/refs.gph thinkerwim.org 70 1README /git/stagit-gemini/file/README.gph thinkerwim.org 70 1LICENSE /git/stagit-gemini/file/LICENSE.gph thinkerwim.org 70 i--- Err thinkerwim.openbsd.amsterdam 70 1commit 70e0e50a6c4d83f7b809be4338bcf2868c13b49b /git/stagit-gemini/commit/70e0e50a6c4d83f7b809be4338bcf2868c13b49b.gph thinkerwim.org 70 1parent f1c1f8c810b311b9f786847dda2494c397cc1ddf /git/stagit-gemini/commit/f1c1f8c810b311b9f786847dda2494c397cc1ddf.gph thinkerwim.org 70 hAuthor: Hiltjo Posthuma URL:mailto:hiltjo@codemadness.org thinkerwim.org 70 iDate: Sun, 6 Dec 2020 17:20:42 +0100 Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 ifix warning with libgit2 v0.99+, remain compatible with older versions Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 igit_blob_rawsize now returns with git_object_size_t (unsigned). This was Err thinkerwim.openbsd.amsterdam 70 igit_off_t (signed). Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 iIn my current version 1.1.0: Err thinkerwim.openbsd.amsterdam 70 i types.h:typedef uint64_t git_object_size_t; Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 iv0.28.5: Err thinkerwim.openbsd.amsterdam 70 ihttps://libgit2.org/libgit2/#v0.28.5/group/blob/git_blob_rawsize Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 ichanged from v0.99 onwards: Err thinkerwim.openbsd.amsterdam 70 ihttps://libgit2.org/libgit2/#v0.99.0/group/blob/git_blob_rawsize Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 iFix: use size_t to remain compatible (with a possible warning in older Err thinkerwim.openbsd.amsterdam 70 iversions), since git_object_size_t is a new defined type. Err thinkerwim.openbsd.amsterdam 70 iThis assumes size_t is atleast uint32_t / uint64_t size. Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 iAdapted from a patch by Augustin Fabre , thanks! Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 iDiffstat: Err thinkerwim.openbsd.amsterdam 70 i M stagit-gopher.c | 15 +++++++-------- Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i1 file changed, 7 insertions(+), 8 deletions(-) Err thinkerwim.openbsd.amsterdam 70 i--- Err thinkerwim.openbsd.amsterdam 70 1diff --git a/stagit-gopher.c b/stagit-gopher.c /git/stagit-gemini/file/stagit-gopher.c.gph thinkerwim.org 70 i@@ -597,13 +597,13 @@ writefooter(FILE *fp) Err thinkerwim.openbsd.amsterdam 70 i size_t Err thinkerwim.openbsd.amsterdam 70 i writeblobgph(FILE *fp, const git_blob *blob) Err thinkerwim.openbsd.amsterdam 70 i { Err thinkerwim.openbsd.amsterdam 70 i- size_t n = 0, i, j, prev; Err thinkerwim.openbsd.amsterdam 70 i+ size_t n = 0, i, j, len, prev; Err thinkerwim.openbsd.amsterdam 70 i const char *nfmt = "%6zu "; Err thinkerwim.openbsd.amsterdam 70 i const char *s = git_blob_rawcontent(blob); Err thinkerwim.openbsd.amsterdam 70 i- git_off_t len = git_blob_rawsize(blob); Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i+ len = git_blob_rawsize(blob); Err thinkerwim.openbsd.amsterdam 70 i if (len > 0) { Err thinkerwim.openbsd.amsterdam 70 i- for (i = 0, prev = 0; i < (size_t)len; i++) { Err thinkerwim.openbsd.amsterdam 70 i+ for (i = 0, prev = 0; i < len; i++) { Err thinkerwim.openbsd.amsterdam 70 i if (s[i] != '\n') Err thinkerwim.openbsd.amsterdam 70 i continue; Err thinkerwim.openbsd.amsterdam 70 i n++; Err thinkerwim.openbsd.amsterdam 70 i@@ -969,7 +969,7 @@ writeatom(FILE *fp, int all) Err thinkerwim.openbsd.amsterdam 70 i } Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i size_t Err thinkerwim.openbsd.amsterdam 70 i-writeblob(git_object *obj, const char *fpath, const char *filename, git_off_t filesize) Err thinkerwim.openbsd.amsterdam 70 i+writeblob(git_object *obj, const char *fpath, const char *filename, size_t filesize) Err thinkerwim.openbsd.amsterdam 70 i { Err thinkerwim.openbsd.amsterdam 70 i char tmp[PATH_MAX] = "", *d; Err thinkerwim.openbsd.amsterdam 70 i size_t lc = 0; Err thinkerwim.openbsd.amsterdam 70 i@@ -986,7 +986,7 @@ writeblob(git_object *obj, const char *fpath, const char *filename, git_off_t fi Err thinkerwim.openbsd.amsterdam 70 i writeheader(fp, filename); Err thinkerwim.openbsd.amsterdam 70 i fputc('t', fp); Err thinkerwim.openbsd.amsterdam 70 i gphtext(fp, filename, strlen(filename)); Err thinkerwim.openbsd.amsterdam 70 i- fprintf(fp, " (%juB)\n", (uintmax_t)filesize); Err thinkerwim.openbsd.amsterdam 70 i+ fprintf(fp, " (%zuB)\n", filesize); Err thinkerwim.openbsd.amsterdam 70 i fputs("---\n", fp); Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i if (git_blob_is_binary((git_blob *)obj)) { Err thinkerwim.openbsd.amsterdam 70 i@@ -1049,10 +1049,9 @@ writefilestree(FILE *fp, git_tree *tree, const char *path) Err thinkerwim.openbsd.amsterdam 70 i { Err thinkerwim.openbsd.amsterdam 70 i const git_tree_entry *entry = NULL; Err thinkerwim.openbsd.amsterdam 70 i git_object *obj = NULL; Err thinkerwim.openbsd.amsterdam 70 i- git_off_t filesize; Err thinkerwim.openbsd.amsterdam 70 i const char *entryname; Err thinkerwim.openbsd.amsterdam 70 i char buf[256], filepath[PATH_MAX], entrypath[PATH_MAX], oid[8]; Err thinkerwim.openbsd.amsterdam 70 i- size_t count, i, lc; Err thinkerwim.openbsd.amsterdam 70 i+ size_t count, i, lc, filesize; Err thinkerwim.openbsd.amsterdam 70 i int r, ret; Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i count = git_tree_entrycount(tree); Err thinkerwim.openbsd.amsterdam 70 i@@ -1096,7 +1095,7 @@ writefilestree(FILE *fp, git_tree *tree, const char *path) Err thinkerwim.openbsd.amsterdam 70 i if (lc > 0) Err thinkerwim.openbsd.amsterdam 70 i fprintf(fp, "%7zuL", lc); Err thinkerwim.openbsd.amsterdam 70 i else Err thinkerwim.openbsd.amsterdam 70 i- fprintf(fp, "%7juB", (uintmax_t)filesize); Err thinkerwim.openbsd.amsterdam 70 i+ fprintf(fp, "%7zuB", filesize); Err thinkerwim.openbsd.amsterdam 70 i fprintf(fp, "|%s/", relpath); Err thinkerwim.openbsd.amsterdam 70 i gphlink(fp, filepath, strlen(filepath)); Err thinkerwim.openbsd.amsterdam 70 i fputs("|server|port]\n", fp); Err thinkerwim.openbsd.amsterdam 70 .