Re: [PATCH] update-index: fix xgetcwd() related memory leak
flat view
From: Jeff King <hidden>
Date: 2017-03-30 06:23:47
On Thu, Mar 30, 2017 at 08:22:08AM +0200, Christian Couder wrote:
quoted hunk ↗ jump to hunk
As xgetcwd() returns an allocated buffer, we should free this buffer when we don't need it any more. This was found by Coverity. Reported-by: Jeff King <redacted> Signed-off-by: Christian Couder <redacted> --- builtin/update-index.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)diff --git a/builtin/update-index.c b/builtin/update-index.c index d74d72cc7f..ebfc09faa0 100644 --- a/builtin/update-index.c +++ b/builtin/update-index.c@@ -125,12 +125,16 @@ static int test_if_untracked_cache_is_supported(void) struct stat st; struct stat_data base; int fd, ret = 0; + char *cwd; strbuf_addstr(&mtime_dir, "mtime-test-XXXXXX"); if (!mkdtemp(mtime_dir.buf)) die_errno("Could not make temporary directory"); - fprintf(stderr, _("Testing mtime in '%s' "), xgetcwd()); + cwd = xgetcwd(); + fprintf(stderr, _("Testing mtime in '%s' "), cwd); + free(cwd); +
Yep, this solution looks obviously correct to me. -Peff