Skip to content

Commit e83c133

Browse files
committed
patch 9.0.1136: memory leak when getting class member type from expr
Problem: Memory leak when getting class member type from expr. Solution: Clear the expression result.
1 parent 03ff0c6 commit e83c133

2 files changed

Lines changed: 5 additions & 0 deletions

File tree

src/version.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -695,6 +695,8 @@ static char *(features[]) =
695695

696696
static int included_patches[] =
697697
{ /* Add new patch number below this line */
698+
/**/
699+
1136,
698700
/**/
699701
1135,
700702
/**/

src/vim9class.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,11 @@ parse_member(
9999
int res = eval0(expr, &tv, eap, &evalarg);
100100

101101
if (res == OK)
102+
{
102103
type = typval2type(&tv, get_copyID(), type_list,
103104
TVTT_DO_MEMBER);
105+
clear_tv(&tv);
106+
}
104107
if (type == NULL)
105108
{
106109
semsg(_(e_cannot_get_object_member_type_from_initializer_str),

0 commit comments

Comments
 (0)