Problem: crash when importing invalid tuple
(Yang LUO, Yanju Chen)
Solution: set type to VAR_UNKNOWN, so that it isn't freed
(Yegappan Lakshmanan)
closes: #17362
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
\ 'E121: Undefined variable: pat'])
endfunc
+" The following used to crash Vim
+func Test_import_invalid_tuple()
+ let lines =<< trim END
+ imp(",G0}11*f\1d[+\x","#|
+ END
+ new
+ call setline(1, lines)
+ call assert_fails('source', 'E114: Missing double quote: "#|')
+ bw!
+endfunc
+
" Test for add() with a tuple
func Test_tuple_add()
let lines =<< trim END
// Add the first item to the tuple from "rettv"
if (tuple_append_tv(tuple, rettv) == FAIL)
return FAIL;
+ // The first item in "rettv" is added to the tuple. Set the rettv
+ // type to unknown, so that the caller doesn't free it.
+ rettv->v_type = VAR_UNKNOWN;
}
}
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1406,
/**/
1405,
/**/