Unverified Commit 68166017 by Edward Thomson Committed by GitHub

Merge pull request #4948 from libgit2/ethomson/memleaks

repository: free memory in symlink detection function
parents 1e92a036 b8b796c1
...@@ -1415,6 +1415,10 @@ static bool is_filesystem_case_insensitive(const char *gitdir_path) ...@@ -1415,6 +1415,10 @@ static bool is_filesystem_case_insensitive(const char *gitdir_path)
static bool are_symlinks_supported(const char *wd_path) static bool are_symlinks_supported(const char *wd_path)
{ {
git_config *config = NULL; git_config *config = NULL;
git_buf global_buf = GIT_BUF_INIT;
git_buf xdg_buf = GIT_BUF_INIT;
git_buf system_buf = GIT_BUF_INIT;
git_buf programdata_buf = GIT_BUF_INIT;
git_buf path = GIT_BUF_INIT; git_buf path = GIT_BUF_INIT;
int fd; int fd;
struct stat st; struct stat st;
...@@ -1428,11 +1432,6 @@ static bool are_symlinks_supported(const char *wd_path) ...@@ -1428,11 +1432,6 @@ static bool are_symlinks_supported(const char *wd_path)
* _not_ set, then we do not test or enable symlink support. * _not_ set, then we do not test or enable symlink support.
*/ */
#ifdef GIT_WIN32 #ifdef GIT_WIN32
git_buf global_buf = GIT_BUF_INIT;
git_buf xdg_buf = GIT_BUF_INIT;
git_buf system_buf = GIT_BUF_INIT;
git_buf programdata_buf = GIT_BUF_INIT;
git_config_find_global(&global_buf); git_config_find_global(&global_buf);
git_config_find_xdg(&xdg_buf); git_config_find_xdg(&xdg_buf);
git_config_find_system(&system_buf); git_config_find_system(&system_buf);
...@@ -1461,6 +1460,10 @@ static bool are_symlinks_supported(const char *wd_path) ...@@ -1461,6 +1460,10 @@ static bool are_symlinks_supported(const char *wd_path)
(void)p_unlink(path.ptr); (void)p_unlink(path.ptr);
done: done:
git_buf_dispose(&global_buf);
git_buf_dispose(&xdg_buf);
git_buf_dispose(&system_buf);
git_buf_dispose(&programdata_buf);
git_buf_dispose(&path); git_buf_dispose(&path);
git_config_free(config); git_config_free(config);
return symlinks != 0; return symlinks != 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment