Commit: patch 9.2.0063: memory leak in type_name_list_or_dict()

0 views
Skip to first unread message

Christian Brabandt

unread,
Feb 26, 2026, 3:46:49 PM (6 days ago) Feb 26
to vim...@googlegroups.com
patch 9.2.0063: memory leak in type_name_list_or_dict()

Commit: https://github.com/vim/vim/commit/5aa0860d0a5188f35faed95088688708a749cc0c
Author: Huihui Huang <625...@qq.com>
Date: Thu Feb 26 20:41:11 2026 +0000

patch 9.2.0063: memory leak in type_name_list_or_dict()

Problem: memory leak in type_name_list_or_dict()
Solution: Free the variable member_free on early returns (Huihui Huang).

closes: #19513

Signed-off-by: Huihui Huang <625...@qq.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/version.c b/src/version.c
index dfc0431b1..3be922580 100644
--- a/src/version.c
+++ b/src/version.c
@@ -734,6 +734,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 63,
/**/
62,
/**/
diff --git a/src/vim9type.c b/src/vim9type.c
index be578f26b..3d9282f60 100644
--- a/src/vim9type.c
+++ b/src/vim9type.c
@@ -2573,7 +2573,10 @@ type_name_list_or_dict(char *name, type_T *type, char **tofree)
size_t len = STRLEN(name) + STRLEN(member_name) + 3;
*tofree = alloc(len);
if (*tofree == NULL)
+ {
+ vim_free(member_free);
return name;
+ }

vim_snprintf(*tofree, len, "%s<%s>", name, member_name);
vim_free(member_free);
Reply all
Reply to author
Forward
0 new messages