From 4e30b6899578bae9343bacf8840a80bf1ada0f2a Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Wed, 6 Aug 2025 10:34:13 +0000 Subject: Don't leak on empty sals Signed-off-by: Laurent Bercot --- src/libstddjb/sals.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/libstddjb/sals.c b/src/libstddjb/sals.c index f6b2aa1..f3b2e08 100644 --- a/src/libstddjb/sals.c +++ b/src/libstddjb/sals.c @@ -12,6 +12,7 @@ int sals (char const *fn, stralloc *sa, size_t *x) int n = 0 ; size_t sabase = sa->len ; size_t maxlen = 0 ; + int wasnull = !sa->s ; DIR *dir = opendir(fn) ; if (!dir) return -1 ; for (;;) @@ -36,6 +37,7 @@ int sals (char const *fn, stralloc *sa, size_t *x) err: dir_close(dir) ; - sa->len = sabase ; + if (wasnull) stralloc_free(sa) ; + else sa->len = sabase ; return -1 ; } -- cgit v1.3.1