forked from aniani/vim
updated for version 7.3.162
Problem: No error message when assigning to a list with an index out of range. (Yukihiro Nakadaira) Solution: Add the error message.
This commit is contained in:
parent
d9462e394a
commit
e962388eac
10
src/eval.c
10
src/eval.c
@ -2794,6 +2794,8 @@ get_lval(name, rettv, lp, unlet, skip, quiet, fne_flags)
|
||||
{
|
||||
if (lp->ll_range && !lp->ll_empty2)
|
||||
clear_tv(&var2);
|
||||
if (!quiet)
|
||||
EMSGN(_(e_listidx), lp->ll_n1);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -2811,7 +2813,11 @@ get_lval(name, rettv, lp, unlet, skip, quiet, fne_flags)
|
||||
{
|
||||
ni = list_find(lp->ll_list, lp->ll_n2);
|
||||
if (ni == NULL)
|
||||
{
|
||||
if (!quiet)
|
||||
EMSGN(_(e_listidx), lp->ll_n2);
|
||||
return NULL;
|
||||
}
|
||||
lp->ll_n2 = list_idx_of_item(lp->ll_list, ni);
|
||||
}
|
||||
|
||||
@ -2819,7 +2825,11 @@ get_lval(name, rettv, lp, unlet, skip, quiet, fne_flags)
|
||||
if (lp->ll_n1 < 0)
|
||||
lp->ll_n1 = list_idx_of_item(lp->ll_list, lp->ll_li);
|
||||
if (lp->ll_n2 < lp->ll_n1)
|
||||
{
|
||||
if (!quiet)
|
||||
EMSGN(_(e_listidx), lp->ll_n2);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
lp->ll_tv = &lp->ll_li->li_tv;
|
||||
|
@ -714,6 +714,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
162,
|
||||
/**/
|
||||
161,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user