From 39b7bf8579e0522cf16347b3a7e332d3b6d742c6 Mon Sep 17 00:00:00 2001 From: Michal Domonkos Date: Mon, 14 Jun 2021 12:34:23 +0200 Subject: [PATCH] Fix memory leak in fts_build() Turns out this leak is already fixed in glibc's current version of fts.c (where our copy originates from), so let's just backport that. Original commit in glibc: https://sourceware.org/git/?p=glibc.git;\ a=commit;h=db67c2c98b89a5723af44df54f38b779de8d4a65 Found by Coverity. --- misc/fts.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/misc/fts.c b/misc/fts.c index caf27495d..f7fce0eaa 100644 --- a/misc/fts.c +++ b/misc/fts.c @@ -855,6 +855,7 @@ mem1: saved_errno = errno; fts_safe_changedir(sp, cur->fts_parent, -1, ".."))) { cur->fts_info = FTS_ERR; SET(FTS_STOP); + fts_lfree(head); return (NULL); } @@ -862,6 +863,7 @@ mem1: saved_errno = errno; if (!nitems) { if (type == BREAD) cur->fts_info = FTS_DP; + fts_lfree(head); return (NULL); } -- 2.27.0