From: Rusty Russell Date: Mon, 9 Jan 2023 02:18:22 +0000 (+1030) Subject: opt: avoid bad access on empty usage message, free all mem in tests. X-Git-Url: http://git.ozlabs.org/?a=commitdiff_plain;h=fbac6a54735b5d153be4675d555e73713186cf69;p=ccan opt: avoid bad access on empty usage message, free all mem in tests. Signed-off-by: Rusty Russell --- diff --git a/ccan/opt/test/run-set_alloc.c b/ccan/opt/test/run-set_alloc.c index 1dbb351b..2d7410ae 100644 --- a/ccan/opt/test/run-set_alloc.c +++ b/ccan/opt/test/run-set_alloc.c @@ -59,8 +59,8 @@ static void *reallocfn(void *ptr, size_t size) static void freefn(void *ptr) { free_count++; - free(ptr); *find_ptr(ptr) = NULL; + free(ptr); } int main(int argc, char *argv[]) diff --git a/ccan/opt/usage.c b/ccan/opt/usage.c index 12f44a48..8ee4ebd0 100644 --- a/ccan/opt/usage.c +++ b/ccan/opt/usage.c @@ -72,7 +72,8 @@ static size_t consume_words(const char *words, size_t maxlen, size_t *prefix, } } - *start = (words[oldlen - 1] == '\n'); + if (oldlen != 0) + *start = (words[oldlen - 1] == '\n'); return oldlen; }