Plug some leaks

This commit is contained in:
Carlos Martín Nieto 2015-09-27 23:32:20 +02:00
parent a8d0b4de92
commit 5c5df666b0
3 changed files with 10 additions and 0 deletions

View File

@ -229,6 +229,7 @@ int git_submodule_lookup(
if (error < 0) {
git_submodule_free(sm);
git_buf_free(&path);
return error;
}
@ -1699,6 +1700,8 @@ static int submodule_read_config(git_submodule *sm, git_config *cfg)
* should be strcasecmp
*/
if (strcmp(sm->name, value) != 0) {
if (sm->path != sm->name)
git__free(sm->path);
sm->path = git__strdup(value);
GITERR_CHECK_ALLOC(sm->path);
}

View File

@ -48,6 +48,8 @@ void test_core_mkdir__absolute(void)
cl_assert(!git_path_isdir(path.ptr));
cl_git_fail(git_futils_mkdir(path.ptr, 0755, 0));
cl_assert(!git_path_isdir(path.ptr));
git_buf_free(&path);
}
void test_core_mkdir__basic(void)

View File

@ -77,5 +77,10 @@ void test_index_rename__casechanging(void)
cl_assert_equal_i(1, git_index_entrycount(index));
else
cl_assert_equal_i(2, git_index_entrycount(index));
git_index_free(index);
git_repository_free(repo);
cl_fixture_cleanup("rename");
}