diff mbox series

[v2,18/29] config: fix leaking "core.notesref" variable

Message ID 1700ec8d215d244ad6787880cb25b9acb83fcddd.1718095906.git.ps@pks.im (mailing list archive)
State Accepted
Commit c6eb58bfb19a0840841934b91613ea53f0da8651
Headers show
Series Memory leak fixes (pt.2) | expand

Commit Message

Patrick Steinhardt June 11, 2024, 9:20 a.m. UTC
The variable used to track the "core.notesref" config is not getting
freed before we assign to it and thus leaks. Fix this.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
---
 config.c                            | 1 +
 t/t3308-notes-merge.sh              | 1 +
 t/t3309-notes-merge-auto-resolve.sh | 1 +
 3 files changed, 3 insertions(+)
diff mbox series

Patch

diff --git a/config.c b/config.c
index abce05b774..742175c130 100644
--- a/config.c
+++ b/config.c
@@ -1565,6 +1565,7 @@  static int git_default_core_config(const char *var, const char *value,
 	if (!strcmp(var, "core.notesref")) {
 		if (!value)
 			return config_error_nonbool(var);
+		free(notes_ref_name);
 		notes_ref_name = xstrdup(value);
 		return 0;
 	}
diff --git a/t/t3308-notes-merge.sh b/t/t3308-notes-merge.sh
index 202702be1a..e1d05ff6bc 100755
--- a/t/t3308-notes-merge.sh
+++ b/t/t3308-notes-merge.sh
@@ -5,6 +5,7 @@ 
 
 test_description='Test merging of notes trees'
 
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 
 test_expect_success setup '
diff --git a/t/t3309-notes-merge-auto-resolve.sh b/t/t3309-notes-merge-auto-resolve.sh
index 9bd5dbf341..f55277f499 100755
--- a/t/t3309-notes-merge-auto-resolve.sh
+++ b/t/t3309-notes-merge-auto-resolve.sh
@@ -5,6 +5,7 @@ 
 
 test_description='Test notes merging with auto-resolving strategies'
 
+TEST_PASSES_SANITIZE_LEAK=true
 . ./test-lib.sh
 
 # Set up a notes merge scenario with all kinds of potential conflicts