From: Bram Moolenaar Date: Fri, 30 Sep 2011 16:35:57 +0000 (+0200) Subject: updated for version 7.3.329 X-Git-Tag: v7.3.329 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=250912918e303cef57cfaa6e1c54aaaac32a9189;p=vim updated for version 7.3.329 Problem: When skipping over code from ":for" to ":endfor" get an error for calling a dict function. (Yasuhiro Matsumoto) Solution: Ignore errors when skipping over :call command. --- diff --git a/src/eval.c b/src/eval.c index 780ed9eca..efbcfaf51 100644 --- a/src/eval.c +++ b/src/eval.c @@ -3377,7 +3377,10 @@ ex_call(eap) /* trans_function_name() doesn't work well when skipping, use eval0() * instead to skip to any following command, e.g. for: * :if 0 | call dict.foo().bar() | endif */ - eval0(eap->arg, &rettv, &eap->nextcmd, FALSE); + ++emsg_skip; + if (eval0(eap->arg, &rettv, &eap->nextcmd, FALSE) != FAIL) + clear_tv(&rettv); + --emsg_skip; return; } diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 9b5a5b164..3008a1d34 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -371,11 +371,9 @@ static void ex_tag_cmd __ARGS((exarg_T *eap, char_u *name)); # define ex_endif ex_ni # define ex_else ex_ni # define ex_while ex_ni -# define ex_for ex_ni # define ex_continue ex_ni # define ex_break ex_ni # define ex_endwhile ex_ni -# define ex_endfor ex_ni # define ex_throw ex_ni # define ex_try ex_ni # define ex_catch ex_ni diff --git a/src/version.c b/src/version.c index 3aa358f57..edf6aaab5 100644 --- a/src/version.c +++ b/src/version.c @@ -709,6 +709,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 329, /**/ 328, /**/