update-index: fix xgetcwd() related memory leak

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 <peff@peff.net> Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Christian Couder committed Mar 30, 2017 at 08:22 UTC c105f563d1b8894af8a7bee68852e45831d55224
1 file changed +5 -1
builtin/update-index.c
+5 -1
@@ -125,12 +125,16 @@ static int test_if_untracked_cache_is_supported(void)
125 struct stat st;
126 struct stat_data base;
127 int fd, ret = 0;
128 + char *cwd;
129
130 strbuf_addstr(&mtime_dir, "mtime-test-XXXXXX");
131 if (!mkdtemp(mtime_dir.buf))
132 die_errno("Could not make temporary directory");
133
133 - fprintf(stderr, _("Testing mtime in '%s' "), xgetcwd());
134 + cwd = xgetcwd();
135 + fprintf(stderr, _("Testing mtime in '%s' "), cwd);
136 + free(cwd);
137 +
138 atexit(remove_test_directory);
139 xstat_mtime_dir(&st);
140 fill_stat_data(&base, &st);