ihandlegph: fix memory leak if writing a line failed - geomyidae - A small C-based gopherd. Err bitreich.org 70 hgit clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/ URL:git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/ bitreich.org 70 1Log /scm/geomyidae/log.gph bitreich.org 70 1Files /scm/geomyidae/files.gph bitreich.org 70 1Refs /scm/geomyidae/refs.gph bitreich.org 70 1Tags /scm/geomyidae/tag bitreich.org 70 1README /scm/geomyidae/file/README.gph bitreich.org 70 1LICENSE /scm/geomyidae/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 997f994cfd4318cdd6b9d40f5864b37002976cac /scm/geomyidae/commit/997f994cfd4318cdd6b9d40f5864b37002976cac.gph bitreich.org 70 1parent 70d5d67d68410c852d9663a6e4935e508897ffdf /scm/geomyidae/commit/70d5d67d68410c852d9663a6e4935e508897ffdf.gph bitreich.org 70 hAuthor: Hiltjo Posthuma URL:mailto:hiltjo@codemadness.org bitreich.org 70 iDate: Wed, 8 Mar 2023 20:56:42 +0100 Err bitreich.org 70 i Err bitreich.org 70 ihandlegph: fix memory leak if writing a line failed Err bitreich.org 70 i Err bitreich.org 70 iSigned-off-by: Christoph Lohmann <20h@r-36.net> Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M handlr.c | 7 ++++--- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 4 insertions(+), 3 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/handlr.c b/handlr.c /scm/geomyidae/file/handlr.c.gph bitreich.org 70 i@@ -108,13 +108,14 @@ handlegph(int sock, char *file, char *port, char *base, char *args, Err bitreich.org 70 i Err bitreich.org 70 i act = scanfile(file); Err bitreich.org 70 i if (act != NULL) { Err bitreich.org 70 i- for (i = 0; i < act->num && ret >= 0; i++) { Err bitreich.org 70 i+ for (i = 0; i < act->num && ret >= 0; i++) Err bitreich.org 70 i ret = printelem(sock, act->n[i], file, base, ohost, port); Err bitreich.org 70 i+ dprintf(sock, ".\r\n"); Err bitreich.org 70 i+ Err bitreich.org 70 i+ for (i = 0; i < act->num; i++) { Err bitreich.org 70 i freeelem(act->n[i]); Err bitreich.org 70 i act->n[i] = NULL; Err bitreich.org 70 i } Err bitreich.org 70 i- dprintf(sock, ".\r\n"); Err bitreich.org 70 i- Err bitreich.org 70 i freeindex(act); Err bitreich.org 70 i } Err bitreich.org 70 i } Err bitreich.org 70 .