From: Patrick Steinhardt Date: Wed, 14 Aug 2024 06:52:00 +0000 (+0200) Subject: object-name: fix leaking symlink paths in object context X-Git-Tag: v2.47.0-rc0~104^2~18 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9ddd5f755d78dd2a3119b63d5f78ca93e4fd3eba;p=thirdparty%2Fgit.git object-name: fix leaking symlink paths in object context The object context may be populated with symlink contents when reading a symlink, but the associated strbuf doesn't ever get released when releasing the object context, causing a memory leak. Plug it. Signed-off-by: Patrick Steinhardt Signed-off-by: Junio C Hamano --- diff --git a/object-name.c b/object-name.c index 240a93e7ce..e39fa50e47 100644 --- a/object-name.c +++ b/object-name.c @@ -1765,6 +1765,7 @@ int strbuf_check_branch_ref(struct strbuf *sb, const char *name) void object_context_release(struct object_context *ctx) { free(ctx->path); + strbuf_release(&ctx->symlink_path); } /* diff --git a/t/t1006-cat-file.sh b/t/t1006-cat-file.sh index ff9bf213aa..d36cd7c086 100755 --- a/t/t1006-cat-file.sh +++ b/t/t1006-cat-file.sh @@ -2,6 +2,7 @@ test_description='git cat-file' +TEST_PASSES_SANITIZE_LEAK=true . ./test-lib.sh test_cmdmode_usage () {