From: Johannes Schindelin Date: Mon, 02 Jan 2017 16:22:33 GMT Subject: [PATCH v4 1/4] Avoid Coverity warning about unfree()d git_exec_path() Message-ID: <18e9a1009aac2329cb9bf9d12fbac4e8ac19a5bb.1483373635.git.johannes.schindelin@gmx.de> In-Reply-To: Technically, it is correct that git_exec_path() returns a possibly malloc()ed string. Practically, it is *sometimes* not malloc()ed. So let's just use a static variable to make it a singleton. That'll shut Coverity up, hopefully. Signed-off-by: Johannes Schindelin --- exec_cmd.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/exec_cmd.c b/exec_cmd.c index 19ac2146d0..587bd7eb48 100644 --- a/exec_cmd.c +++ b/exec_cmd.c @@ -65,6 +65,7 @@ void git_set_argv_exec_path(const char *exec_path) const char *git_exec_path(void) { const char *env; + static char *system_exec_path; if (argv_exec_path) return argv_exec_path; @@ -74,7 +75,9 @@ const char *git_exec_path(void) return env; } - return system_path(GIT_EXEC_PATH); + if (!system_exec_path) + system_exec_path = system_path(GIT_EXEC_PATH); + return system_exec_path; } static void add_path(struct strbuf *out, const char *path) -- 2.11.0.rc3.windows.1