changeset 19237:1a3ebc75cf39 v8.2.0177

patch 8.2.0177: memory leak in get_tags() Commit: https://github.com/vim/vim/commit/70b3e706b40fc2c84c1f9f33fa64945a481df395 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Jan 29 22:38:45 2020 +0100 patch 8.2.0177: memory leak in get_tags() Problem: Memory leak in get_tags(). Solution: Free matches when finding a pseudo-tag line. (Dominique Pelle, closes #5553)
author Bram Moolenaar <Bram@vim.org>
date Wed, 29 Jan 2020 22:45:08 +0100
parents f34487e42001
children ec0bc60b3906
files src/tag.c src/version.c
diffstat 2 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/tag.c
+++ b/src/tag.c
@@ -3980,7 +3980,10 @@ get_tags(list_T *list, char_u *pat, char
 
 	    // Skip pseudo-tag lines.
 	    if (STRNCMP(tp.tagname, "!_TAG_", 6) == 0)
+	    {
+		vim_free(matches[i]);
 		continue;
+	    }
 
 	    if ((dict = dict_alloc()) == NULL)
 		ret = FAIL;
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    177,
+/**/
     176,
 /**/
     175,