updated for version 7.1-113
diff --git a/src/eval.c b/src/eval.c
index 37db67c..412d31d 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1318,7 +1318,6 @@
{
hashitem_T *hi;
- clear_tv(&vimvars[idx].vv_tv);
vimvars[idx].vv_tv = *save_tv;
if (vimvars[idx].vv_type == VAR_UNKNOWN)
{
@@ -1362,7 +1361,6 @@
if (p_verbose == 0)
--emsg_off;
- vimvars[VV_VAL].vv_str = NULL;
restore_vimvar(VV_VAL, &save_val);
return list;
@@ -9387,15 +9385,16 @@
{
typval_T rettv;
char_u *s;
+ int retval = FAIL;
copy_tv(tv, &vimvars[VV_VAL].vv_tv);
s = expr;
if (eval1(&s, &rettv, TRUE) == FAIL)
- return FAIL;
+ goto theend;
if (*s != NUL) /* check for trailing chars after expr */
{
EMSG2(_(e_invexpr2), s);
- return FAIL;
+ goto theend;
}
if (map)
{
@@ -9414,10 +9413,12 @@
/* On type error, nothing has been removed; return FAIL to stop the
* loop. The error message was given by get_tv_number_chk(). */
if (error)
- return FAIL;
+ goto theend;
}
+ retval = OK;
+theend:
clear_tv(&vimvars[VV_VAL].vv_tv);
- return OK;
+ return retval;
}
/*
diff --git a/src/version.c b/src/version.c
index 62428be..5cd3d8f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 113,
+/**/
112,
/**/
111,