From: Yasuhiro Matsumoto Date: Sun, 19 Jul 2026 16:17:11 +0000 (+0000) Subject: patch 9.2.0810: add_llist_tags() uses wrong function to free dict X-Git-Tag: v9.2.0810^0 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=760317f234ea227a014d00aeb5d3eeb5b4556d9c;p=thirdparty%2Fvim.git patch 9.2.0810: add_llist_tags() uses wrong function to free dict Problem: add_llist_tags() uses wrong function to free dict on alloc failure Solution: Use dict_unref() (Yasuhiro Matsumoto). add_llist_tags() released a dict_alloc()'d dict with vim_free() when list_append_dict() failed, leaving a dangling pointer in the dict garbage-collection chain. Use dict_unref(). related: #20668 closes: #20743 Signed-off-by: Yasuhiro Matsumoto Signed-off-by: Christian Brabandt --- diff --git a/src/tag.c b/src/tag.c index cd068043d4..96afc699b4 100644 --- a/src/tag.c +++ b/src/tag.c @@ -1270,7 +1270,7 @@ add_llist_tags( continue; if (list_append_dict(list, dict) == FAIL) { - vim_free(dict); + dict_unref(dict); continue; } diff --git a/src/version.c b/src/version.c index aa3f5b3fbd..cf0d47a529 100644 --- a/src/version.c +++ b/src/version.c @@ -759,6 +759,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 810, /**/ 809, /**/