ifix a small memleak in writeatom() - 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 5ee02bf5a3fc5f4be6a933722c13bfe3527773ae /git/stagit-gemini/commit/5ee02bf5a3fc5f4be6a933722c13bfe3527773ae.gph thinkerwim.org 70 1parent 2afab18ce4580fb3be22d6c49380444e9844a3ce /git/stagit-gemini/commit/2afab18ce4580fb3be22d6c49380444e9844a3ce.gph thinkerwim.org 70 hAuthor: Hiltjo Posthuma URL:mailto:hiltjo@codemadness.org thinkerwim.org 70 iDate: Mon, 10 Aug 2020 16:12:03 +0200 Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 ifix a small memleak in writeatom() Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 inon-tag references were not freed. Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 iDiffstat: Err thinkerwim.openbsd.amsterdam 70 i M stagit-gopher.c | 16 ++++++---------- Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i1 file changed, 6 insertions(+), 10 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@@ -949,21 +949,17 @@ writeatom(FILE *fp, int all) Err thinkerwim.openbsd.amsterdam 70 i commitinfo_free(ci); Err thinkerwim.openbsd.amsterdam 70 i } Err thinkerwim.openbsd.amsterdam 70 i git_revwalk_free(w); Err thinkerwim.openbsd.amsterdam 70 i- } else { Err thinkerwim.openbsd.amsterdam 70 i+ } else if (getrefs(&ris, &refcount) != -1) { Err thinkerwim.openbsd.amsterdam 70 i /* references: tags */ Err thinkerwim.openbsd.amsterdam 70 i- if (getrefs(&ris, &refcount) != -1) { Err thinkerwim.openbsd.amsterdam 70 i- for (i = 0; i < refcount; i++) { Err thinkerwim.openbsd.amsterdam 70 i- if (!git_reference_is_tag(ris[i].ref)) Err thinkerwim.openbsd.amsterdam 70 i- continue; Err thinkerwim.openbsd.amsterdam 70 i- Err thinkerwim.openbsd.amsterdam 70 i+ for (i = 0; i < refcount; i++) { Err thinkerwim.openbsd.amsterdam 70 i+ if (git_reference_is_tag(ris[i].ref)) Err thinkerwim.openbsd.amsterdam 70 i printcommitatom(fp, ris[i].ci, Err thinkerwim.openbsd.amsterdam 70 i git_reference_shorthand(ris[i].ref)); Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i- commitinfo_free(ris[i].ci); Err thinkerwim.openbsd.amsterdam 70 i- git_reference_free(ris[i].ref); Err thinkerwim.openbsd.amsterdam 70 i- } Err thinkerwim.openbsd.amsterdam 70 i- free(ris); Err thinkerwim.openbsd.amsterdam 70 i+ commitinfo_free(ris[i].ci); Err thinkerwim.openbsd.amsterdam 70 i+ git_reference_free(ris[i].ref); Err thinkerwim.openbsd.amsterdam 70 i } Err thinkerwim.openbsd.amsterdam 70 i+ free(ris); Err thinkerwim.openbsd.amsterdam 70 i } Err thinkerwim.openbsd.amsterdam 70 i Err thinkerwim.openbsd.amsterdam 70 i fputs("\n", fp); Err thinkerwim.openbsd.amsterdam 70 .