Mercurial > vim
diff src/regexp_nfa.c @ 28325:a3a760ee765f v8.2.4688
patch 8.2.4688: new regexp engine does not give an error for "%v"
Commit: https://github.com/vim/vim/commit/91ff3d4f52a55a7c37a52aaad524cd9dd12efae4
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Apr 4 18:32:32 2022 +0100
patch 8.2.4688: new regexp engine does not give an error for "\%v"
Problem: New regexp engine does not give an error for "\%v".
Solution: Check for a value argument. (issue https://github.com/vim/vim/issues/10079)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 04 Apr 2022 19:45:04 +0200 |
parents | f70015784777 |
children | 786707ef91de |
line wrap: on
line diff
--- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -1654,7 +1654,7 @@ nfa_regatom(void) if (cur) { - semsg(_(e_regexp_number_after_dot_pos_search), + semsg(_(e_regexp_number_after_dot_pos_search_chr), no_Magic(c)); return FAIL; } @@ -1673,6 +1673,12 @@ nfa_regatom(void) { long_u limit = INT_MAX; + if (!cur && n == 0) + { + semsg(_(e_nfa_regexp_missing_value_in_chr), + no_Magic(c)); + return FAIL; + } if (c == 'l') { if (cur)