Commit 25abbc27a77895e2f2316ed307b51e628d85f15c

Carlos Martín Nieto 2014-09-17T03:19:40

Clean up some leaks in the test suite

diff --git a/src/path.c b/src/path.c
index d29b992..760efec 100644
--- a/src/path.c
+++ b/src/path.c
@@ -1088,8 +1088,10 @@ int git_path_dirload(
 			entry_path[path_len] = '/';
 		memcpy(&entry_path[path_len + need_slash], de_path, de_len);
 
-		if ((error = git_vector_insert(contents, entry_path)) < 0)
+		if ((error = git_vector_insert(contents, entry_path)) < 0) {
+			git__free(entry_path);
 			break;
+		}
 	}
 
 	closedir(dir);
diff --git a/tests/network/remote/remotes.c b/tests/network/remote/remotes.c
index d176774..df424e9 100644
--- a/tests/network/remote/remotes.c
+++ b/tests/network/remote/remotes.c
@@ -547,6 +547,7 @@ void test_network_remote_remotes__single_branch(void)
 	}
 	cl_assert_equal_i(1, count);
 
+	git_strarray_free(&refs);
 	git_repository_free(repo);
 }
 
diff --git a/tests/repo/init.c b/tests/repo/init.c
index 999afd6..189b089 100644
--- a/tests/repo/init.c
+++ b/tests/repo/init.c
@@ -423,6 +423,7 @@ void test_repo_init__relative_gitdir_2(void)
 
 	/* make the directory first, then it should succeed */
 	cl_git_pass(git_repository_init_ext(&_repo, "root/b/my_repository", &opts));
+	git_buf_free(&full_path);
 
 	cl_assert(!git__suffixcmp(git_repository_workdir(_repo), "root/b/c_wd/"));
 	cl_assert(!git__suffixcmp(git_repository_path(_repo), "root/b/my_repository/"));
diff --git a/tests/transport/register.c b/tests/transport/register.c
index 937194c..ea917d5 100644
--- a/tests/transport/register.c
+++ b/tests/transport/register.c
@@ -47,6 +47,7 @@ void test_transport_register__custom_transport_ssh(void)
 	cl_git_fail_with(git_transport_new(&transport, NULL, "git@somehost:somepath"), -1);
 #else
 	cl_git_pass(git_transport_new(&transport, NULL, "git@somehost:somepath"));
+	transport->free(transport);
 #endif
 
 	cl_git_pass(git_transport_register("ssh", dummy_transport, NULL));
@@ -62,5 +63,6 @@ void test_transport_register__custom_transport_ssh(void)
 	cl_git_fail_with(git_transport_new(&transport, NULL, "git@somehost:somepath"), -1);
 #else
 	cl_git_pass(git_transport_new(&transport, NULL, "git@somehost:somepath"));
+	transport->free(transport);
 #endif
 }