From: Johannes Sixt Date: Thu, 27 Apr 2017 06:27:41 GMT Subject: Re: [PATCH 14/26] setup_bare_git_dir(): fix memory leak Message-ID: <51f2bd16-7c55-7ba0-c963-6f725b2f79e5@kdbg.org> In-Reply-To: <042b3e98e9e5b8850c35103cc56cf651b2fb3f6e.1493237937.git.johannes.schindelin@gmx.de> Am 26.04.2017 um 22:20 schrieb Johannes Schindelin: > Reported by Coverity. > > Signed-off-by: Johannes Schindelin > --- > setup.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/setup.c b/setup.c > index 0309c278218..0320a9ad14c 100644 > --- a/setup.c > +++ b/setup.c > @@ -748,7 +748,7 @@ static const char *setup_bare_git_dir(struct strbuf *cwd, int offset, > > /* --work-tree is set without --git-dir; use discovered one */ > if (getenv(GIT_WORK_TREE_ENVIRONMENT) || git_work_tree_cfg) { > - const char *gitdir; > + static const char *gitdir; > > gitdir = offset == cwd->len ? "." : xmemdupz(cwd->buf, offset); > if (chdir(cwd->buf)) > Whoa! Look what values are assigned to the variable: Either a static string or allocated memory. I suspect that this does not fix a memory leak at all, but only shuts up Coverity. -- Hannes PS: stopping here as I'm running out of time.