git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: git@vger.kernel.org
Cc: "René Scharfe" <l.s.r@web.de>,
	"Junio C Hamano" <gitster@pobox.com>,
	"Eric Sunshine" <sunshine@sunshineco.com>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Subject: [PATCH v5 05/19] various: add missing clear_pathspec(), fix leaks
Date: Wed, 18 Jan 2023 13:08:18 +0100	[thread overview]
Message-ID: <patch-v5-05.19-8d10fbe0b8f-20230118T120334Z-avarab@gmail.com> (raw)
In-Reply-To: <cover-v5-00.19-00000000000-20230118T120334Z-avarab@gmail.com>

Fix memory leaks resulting from a missing clear_pathspec().

- archive.c: Plug a leak in the "struct archiver_args", and
  clear_pathspec() the "pathspec" member that the "parse_pathspec_arg()"
  call in this function populates.

- builtin/clean.c: Fix a memory leak that's been with us since
  893d839970c (clean: convert to use parse_pathspec, 2013-07-14).

- builtin/reset.c: Add clear_pathspec() calls to cmd_reset(),
  including to the codepaths where we'd return early.

- builtin/stash.c: Call clear_pathspec() on the pathspec initialized
  in push_stash().

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
---
 archive.c                       |  1 +
 builtin/clean.c                 |  1 +
 builtin/reset.c                 | 11 ++++++++---
 builtin/stash.c                 |  7 +++++--
 t/t5001-archive-attr.sh         |  1 +
 t/t5004-archive-corner-cases.sh |  2 ++
 t/t7105-reset-patch.sh          |  2 ++
 t/t7106-reset-unborn-branch.sh  |  2 ++
 t/t7107-reset-pathspec-file.sh  |  1 +
 t/t7301-clean-interactive.sh    |  1 +
 10 files changed, 24 insertions(+), 5 deletions(-)

diff --git a/archive.c b/archive.c
index 941495f5d78..a2d813e50db 100644
--- a/archive.c
+++ b/archive.c
@@ -710,6 +710,7 @@ int write_archive(int argc, const char **argv, const char *prefix,
 
 	string_list_clear_func(&args.extra_files, extra_file_info_clear);
 	free(args.refname);
+	clear_pathspec(&args.pathspec);
 
 	return rc;
 }
diff --git a/builtin/clean.c b/builtin/clean.c
index b2701a28158..b15eab328b7 100644
--- a/builtin/clean.c
+++ b/builtin/clean.c
@@ -1092,5 +1092,6 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 	strbuf_release(&buf);
 	string_list_clear(&del_list, 0);
 	string_list_clear(&exclude_list, 0);
+	clear_pathspec(&pathspec);
 	return (errors != 0);
 }
diff --git a/builtin/reset.c b/builtin/reset.c
index fea20a9ba0b..e9c10618cd3 100644
--- a/builtin/reset.c
+++ b/builtin/reset.c
@@ -390,7 +390,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
 		if (reset_type != NONE)
 			die(_("options '%s' and '%s' cannot be used together"), "--patch", "--{hard,mixed,soft}");
 		trace2_cmd_mode("patch-interactive");
-		return run_add_interactive(rev, "--patch=reset", &pathspec);
+		update_ref_status = run_add_interactive(rev, "--patch=reset", &pathspec);
+		goto cleanup;
 	}
 
 	/* git reset tree [--] paths... can be used to
@@ -439,8 +440,10 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
 				       LOCK_DIE_ON_ERROR);
 		if (reset_type == MIXED) {
 			int flags = quiet ? REFRESH_QUIET : REFRESH_IN_PORCELAIN;
-			if (read_from_tree(&pathspec, &oid, intent_to_add))
-				return 1;
+			if (read_from_tree(&pathspec, &oid, intent_to_add)) {
+				update_ref_status = 1;
+				goto cleanup;
+			}
 			the_index.updated_skipworktree = 1;
 			if (!no_refresh && get_git_work_tree()) {
 				uint64_t t_begin, t_delta_in_ms;
@@ -488,5 +491,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
 
 	discard_index(&the_index);
 
+cleanup:
+	clear_pathspec(&pathspec);
 	return update_ref_status;
 }
diff --git a/builtin/stash.c b/builtin/stash.c
index bb0fd861434..45bffdf54bb 100644
--- a/builtin/stash.c
+++ b/builtin/stash.c
@@ -1727,6 +1727,7 @@ static int push_stash(int argc, const char **argv, const char *prefix,
 		OPT_PATHSPEC_FILE_NUL(&pathspec_file_nul),
 		OPT_END()
 	};
+	int ret;
 
 	if (argc) {
 		force_assume = !strcmp(argv[0], "-p");
@@ -1766,8 +1767,10 @@ static int push_stash(int argc, const char **argv, const char *prefix,
 		die(_("the option '%s' requires '%s'"), "--pathspec-file-nul", "--pathspec-from-file");
 	}
 
-	return do_push_stash(&ps, stash_msg, quiet, keep_index, patch_mode,
-			     include_untracked, only_staged);
+	ret = do_push_stash(&ps, stash_msg, quiet, keep_index, patch_mode,
+			    include_untracked, only_staged);
+	clear_pathspec(&ps);
+	return ret;
 }
 
 static int push_stash_unassumed(int argc, const char **argv, const char *prefix)
diff --git a/t/t5001-archive-attr.sh b/t/t5001-archive-attr.sh
index 2f6eef5e372..04d300eeda7 100755
--- a/t/t5001-archive-attr.sh
+++ b/t/t5001-archive-attr.sh
@@ -3,6 +3,7 @@
 test_description='git archive attribute tests'
 
 TEST_CREATE_REPO_NO_TEMPLATE=1
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 
 SUBSTFORMAT='%H (%h)%n'
diff --git a/t/t5004-archive-corner-cases.sh b/t/t5004-archive-corner-cases.sh
index ae508e21623..9f2c6da80e8 100755
--- a/t/t5004-archive-corner-cases.sh
+++ b/t/t5004-archive-corner-cases.sh
@@ -1,6 +1,8 @@
 #!/bin/sh
 
 test_description='test corner cases of git-archive'
+
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 
 # the 10knuls.tar file is used to test for an empty git generated tar
diff --git a/t/t7105-reset-patch.sh b/t/t7105-reset-patch.sh
index fc2a6cf5c7a..9b46da7aaa7 100755
--- a/t/t7105-reset-patch.sh
+++ b/t/t7105-reset-patch.sh
@@ -1,6 +1,8 @@
 #!/bin/sh
 
 test_description='git reset --patch'
+
+TEST_PASSES_SANITIZE_LEAK=true
 . ./lib-patch-mode.sh
 
 test_expect_success PERL 'setup' '
diff --git a/t/t7106-reset-unborn-branch.sh b/t/t7106-reset-unborn-branch.sh
index ecb85c3b823..a0b67a0b843 100755
--- a/t/t7106-reset-unborn-branch.sh
+++ b/t/t7106-reset-unborn-branch.sh
@@ -1,6 +1,8 @@
 #!/bin/sh
 
 test_description='git reset should work on unborn branch'
+
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 
 test_expect_success 'setup' '
diff --git a/t/t7107-reset-pathspec-file.sh b/t/t7107-reset-pathspec-file.sh
index 523efbecde1..af5ea406db3 100755
--- a/t/t7107-reset-pathspec-file.sh
+++ b/t/t7107-reset-pathspec-file.sh
@@ -2,6 +2,7 @@
 
 test_description='reset --pathspec-from-file'
 
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 
 test_tick
diff --git a/t/t7301-clean-interactive.sh b/t/t7301-clean-interactive.sh
index a07e8b86de2..d82a3210a1d 100755
--- a/t/t7301-clean-interactive.sh
+++ b/t/t7301-clean-interactive.sh
@@ -2,6 +2,7 @@
 
 test_description='git clean -i basic tests'
 
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 . "$TEST_DIRECTORY"/lib-terminal.sh
 
-- 
2.39.0.1225.g30a3d88132d


  parent reply	other threads:[~2023-01-18 12:47 UTC|newest]

Thread overview: 193+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-28 18:00 [PATCH 00/20] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 01/20] t6021: mark as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 02/20] tests: mark tests " Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 03/20] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 04/20] commit-graph: use free() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2022-12-28 18:10   ` René Scharfe
2022-12-28 18:00 ` [PATCH 05/20] clone: " Ævar Arnfjörð Bjarmason
2022-12-28 18:20   ` René Scharfe
2022-12-29  9:02   ` Junio C Hamano
2022-12-29 10:20     ` Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 06/20] archive.c: call clear_pathspec() in write_archive() Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 07/20] stash: fix a "struct pathspec" leak Ævar Arnfjörð Bjarmason
2022-12-28 19:45   ` René Scharfe
2022-12-29  7:02     ` Junio C Hamano
2022-12-28 18:00 ` [PATCH 08/20] reset: fix cmd_reset() leaks with a clear_pathspec() call Ævar Arnfjörð Bjarmason
2022-12-29  9:12   ` Junio C Hamano
2022-12-28 18:00 ` [PATCH 09/20] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2022-12-28 20:31   ` René Scharfe
2022-12-29  7:12     ` Junio C Hamano
2022-12-28 18:00 ` [PATCH 10/20] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 11/20] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2022-12-28 20:53   ` René Scharfe
2022-12-28 18:00 ` [PATCH 12/20] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2022-12-28 21:37   ` René Scharfe
2022-12-29  7:32     ` Junio C Hamano
2022-12-29 15:49       ` René Scharfe
2022-12-28 18:00 ` [PATCH 13/20] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 14/20] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 15/20] builtin/merge.c: always free "struct strbuf msg" Ævar Arnfjörð Bjarmason
2022-12-28 22:06   ` René Scharfe
2022-12-28 18:00 ` [PATCH 16/20] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2022-12-28 22:13   ` René Scharfe
2022-12-28 18:00 ` [PATCH 17/20] connected.c: free(new_pack) in check_connected() Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 18/20] object-file.c: free the "t.tag" in check_tag() Ævar Arnfjörð Bjarmason
2022-12-28 22:25   ` René Scharfe
2022-12-28 18:00 ` [PATCH 19/20] grep.c: make it easier to extend free_grep_patterns() Ævar Arnfjörð Bjarmason
2022-12-28 18:00 ` [PATCH 20/20] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2022-12-28 19:36   ` Eric Sunshine
2022-12-28 22:50   ` René Scharfe
2022-12-30  2:18 ` [PATCH v2 00/20] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 01/20] tests: mark tests as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 02/20] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 03/20] commit-graph: use free() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2022-12-30 16:26     ` René Scharfe
2022-12-30  2:18   ` [PATCH v2 04/20] clone: " Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 05/20] various: add missing clear_pathspec(), fix leaks Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 06/20] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 07/20] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 08/20] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 09/20] http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 10/20] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 11/20] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 12/20] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 13/20] builtin/merge.c: always free "struct strbuf msg" Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 14/20] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 15/20] connected.c: free(new_pack) in check_connected() Ævar Arnfjörð Bjarmason
2022-12-30 16:17     ` René Scharfe
2023-01-10  5:39       ` Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 16/20] object-file.c: release the "tag" in check_tag() Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 17/20] grep.c: refactor free_grep_patterns() Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 18/20] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 19/20] receive-pack: free() the "ref_name" in "struct command" Ævar Arnfjörð Bjarmason
2022-12-30  2:18   ` [PATCH v2 20/20] push: free_refs() the "local_refs" in set_refspecs() Ævar Arnfjörð Bjarmason
2023-01-10  5:43   ` [PATCH v3 00/19] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 01/19] tests: mark tests as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 02/19] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 03/19] commit-graph: use free_commit_graph() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 04/19] clone: use free() " Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 05/19] various: add missing clear_pathspec(), fix leaks Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 06/19] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 07/19] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 08/19] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 09/19] http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 10/19] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 11/19] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 12/19] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 13/19] builtin/merge.c: always free "struct strbuf msg" Ævar Arnfjörð Bjarmason
2023-01-10 18:52       ` René Scharfe
2023-01-13 19:57         ` Junio C Hamano
2023-01-10  5:43     ` [PATCH v3 14/19] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 15/19] object-file.c: release the "tag" in check_tag() Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 16/19] grep.c: refactor free_grep_patterns() Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 17/19] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 18/19] receive-pack: free() the "ref_name" in "struct command" Ævar Arnfjörð Bjarmason
2023-01-10  5:43     ` [PATCH v3 19/19] push: free_refs() the "local_refs" in set_refspecs() Ævar Arnfjörð Bjarmason
2023-01-17 17:11     ` [PATCH v4 00/19] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 01/19] tests: mark tests as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 02/19] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 03/19] commit-graph: use free_commit_graph() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 04/19] clone: use free() " Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 05/19] various: add missing clear_pathspec(), fix leaks Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 06/19] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 07/19] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 08/19] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2023-01-18  6:28         ` Junio C Hamano
2023-01-18  7:00           ` [PATCH v4 20/19] branch: the ref_filter is not cleaned Junio C Hamano
2023-01-18 10:57           ` [PATCH v4 08/19] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2023-01-18 16:16             ` Junio C Hamano
2023-01-18 23:03               ` Ævar Arnfjörð Bjarmason
2023-01-18 23:20                 ` Junio C Hamano
2023-01-17 17:11       ` [PATCH v4 09/19] http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 10/19] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 11/19] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 12/19] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 13/19] builtin/merge.c: use fixed strings, not "strbuf", fix leak Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 14/19] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 15/19] object-file.c: release the "tag" in check_tag() Ævar Arnfjörð Bjarmason
2023-01-17 19:58         ` René Scharfe
2023-01-18 17:19           ` Jeff King
2023-01-18 18:05             ` René Scharfe
2023-01-18 18:39               ` Jeff King
2023-01-18 18:54                 ` René Scharfe
2023-01-18 19:17                   ` Jeff King
2023-01-17 17:11       ` [PATCH v4 16/19] grep.c: refactor free_grep_patterns() Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 17/19] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 18/19] receive-pack: free() the "ref_name" in "struct command" Ævar Arnfjörð Bjarmason
2023-01-17 17:11       ` [PATCH v4 19/19] push: free_refs() the "local_refs" in set_refspecs() Ævar Arnfjörð Bjarmason
2023-01-17 19:58         ` René Scharfe
2023-01-18 12:08       ` [PATCH v5 00/19] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 01/19] tests: mark tests as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 02/19] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2023-01-26  1:38           ` Elijah Newren
2023-01-18 12:08         ` [PATCH v5 03/19] commit-graph: use free_commit_graph() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 04/19] clone: use free() " Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` Ævar Arnfjörð Bjarmason [this message]
2023-01-18 12:08         ` [PATCH v5 06/19] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 07/19] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2023-01-26  1:36           ` Elijah Newren
2023-01-18 12:08         ` [PATCH v5 08/19] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 09/19] http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 10/19] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 11/19] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 12/19] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 13/19] builtin/merge.c: use fixed strings, not "strbuf", fix leak Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 14/19] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2023-01-26  1:54           ` Elijah Newren
2023-01-18 12:08         ` [PATCH v5 15/19] object-file.c: release the "tag" in check_tag() Ævar Arnfjörð Bjarmason
2023-01-18 12:08         ` [PATCH v5 16/19] grep.c: refactor free_grep_patterns() Ævar Arnfjörð Bjarmason
2023-01-26  2:26           ` Elijah Newren
2023-01-18 12:08         ` [PATCH v5 17/19] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2023-01-26  2:33           ` Elijah Newren
2023-01-18 12:08         ` [PATCH v5 18/19] receive-pack: free() the "ref_name" in "struct command" Ævar Arnfjörð Bjarmason
2023-01-26  2:37           ` Elijah Newren
2023-01-18 12:08         ` [PATCH v5 19/19] push: free_refs() the "local_refs" in set_refspecs() Ævar Arnfjörð Bjarmason
2023-01-26  2:44           ` Elijah Newren
2023-02-02  9:52         ` [PATCH v6 00/19] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 01/19] tests: mark tests as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 02/19] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 03/19] commit-graph: use free_commit_graph() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 04/19] clone: use free() " Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 05/19] various: add missing clear_pathspec(), fix leaks Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 06/19] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 07/19] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 08/19] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 09/19] http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 10/19] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 11/19] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 12/19] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 13/19] builtin/merge.c: use fixed strings, not "strbuf", fix leak Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 14/19] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 15/19] grep.c: refactor free_grep_patterns() Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 16/19] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2023-02-02  9:52           ` [PATCH v6 17/19] receive-pack: free() the "ref_name" in "struct command" Ævar Arnfjörð Bjarmason
2023-02-02 21:55             ` Junio C Hamano
2023-02-02  9:52           ` [PATCH v6 18/19] push: refactor refspec_append_mapped() for subsequent leak-fix Ævar Arnfjörð Bjarmason
2023-02-02 22:10             ` Junio C Hamano
2023-02-06 17:16               ` Ævar Arnfjörð Bjarmason
2023-02-06 23:42                 ` Junio C Hamano
2023-02-02  9:52           ` [PATCH v6 19/19] push: free_refs() the "local_refs" in set_refspecs() Ævar Arnfjörð Bjarmason
2023-02-02 22:12             ` Junio C Hamano
2023-02-06 17:19               ` Ævar Arnfjörð Bjarmason
2023-02-06 23:07           ` [PATCH v7 00/19] leak fixes: various simple leak fixes Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 01/19] tests: mark tests as passing with SANITIZE=leak Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 02/19] bundle.c: don't leak the "args" in the "struct child_process" Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 03/19] commit-graph: use free_commit_graph() instead of UNLEAK() Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 04/19] clone: use free() " Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 05/19] various: add missing clear_pathspec(), fix leaks Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 06/19] name-rev: don't xstrdup() an already dup'd string Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 07/19] repack: fix leaks on error with "goto cleanup" Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 08/19] worktree: fix a trivial leak in prune_worktrees() Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 09/19] http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 10/19] http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 11/19] commit-graph: fix a parse_options_concat() leak Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 12/19] show-branch: free() allocated "head" before return Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 13/19] builtin/merge.c: use fixed strings, not "strbuf", fix leak Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 14/19] builtin/merge.c: free "&buf" on "Your local changes..." error Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 15/19] grep.c: refactor free_grep_patterns() Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 16/19] grep API: plug memory leaks by freeing "header_list" Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 17/19] receive-pack: release the linked "struct command *" list Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 18/19] push: refactor refspec_append_mapped() for subsequent leak-fix Ævar Arnfjörð Bjarmason
2023-02-06 23:07             ` [PATCH v7 19/19] push: free_refs() the "local_refs" in set_refspecs() Ævar Arnfjörð Bjarmason
2023-02-07  0:13             ` [PATCH v7 00/19] leak fixes: various simple leak fixes Junio C Hamano
2023-02-07  3:40             ` Elijah Newren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=patch-v5-05.19-8d10fbe0b8f-20230118T120334Z-avarab@gmail.com \
    --to=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=l.s.r@web.de \
    --cc=sunshine@sunshineco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).