summaryrefslogtreecommitdiffstats
path: root/src/ex_eval.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-02-07 19:46:12 +0100
committerBram Moolenaar <Bram@vim.org>2016-02-07 19:46:12 +0100
commit768ce2435ae956041579ef2d26e3e9d3a2444e1e (patch)
tree9ad823a034dec576edaf9552e937c6719db9fa1f /src/ex_eval.c
parentea8c219ca852cc8eaf603b1bf475edf95e2850cf (diff)
patch 7.4.1282v7.4.1282
Problem: Crash when evaluating the pattern of ":catch" causes an error. (Dominique Pelle) Solution: Block error messages at this point.
Diffstat (limited to 'src/ex_eval.c')
-rw-r--r--src/ex_eval.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/ex_eval.c b/src/ex_eval.c
index c8e33c2eee..c68c6ad189 100644
--- a/src/ex_eval.c
+++ b/src/ex_eval.c
@@ -1562,7 +1562,11 @@ ex_catch(exarg_T *eap)
}
save_cpo = p_cpo;
p_cpo = (char_u *)"";
+ /* Disable error messages, it will make current_exception
+ * invalid. */
+ ++emsg_off;
regmatch.regprog = vim_regcomp(pat, RE_MAGIC + RE_STRING);
+ --emsg_off;
regmatch.rm_ic = FALSE;
if (end != NULL)
*end = save_char;