]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.0.1136: memory leak when getting class member type from expr v9.0.1136
authorBram Moolenaar <Bram@vim.org>
Mon, 2 Jan 2023 21:04:04 +0000 (21:04 +0000)
committerBram Moolenaar <Bram@vim.org>
Mon, 2 Jan 2023 21:04:04 +0000 (21:04 +0000)
Problem:    Memory leak when getting class member type from expr.
Solution:   Clear the expression result.

src/version.c
src/vim9class.c

index 72493e3c1f265f674860868f059524159cea2437..ab0c923176314703dc60166b413fed16bfab0676 100644 (file)
@@ -695,6 +695,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1136,
 /**/
     1135,
 /**/
index e764f7088f6e52dca867fb650b22beb7b247f697..2717a7905a60bcbf4615600a598f49dae6edbf50 100644 (file)
@@ -99,8 +99,11 @@ parse_member(
            int res = eval0(expr, &tv, eap, &evalarg);
 
            if (res == OK)
+           {
                type = typval2type(&tv, get_copyID(), type_list,
                                                       TVTT_DO_MEMBER);
+               clear_tv(&tv);
+           }
            if (type == NULL)
            {
                semsg(_(e_cannot_get_object_member_type_from_initializer_str),