aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/regexp_nfa.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-11-05 15:56:15 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-11-05 16:09:22 +0800
commit77e25e56d8ccc0c174305f9fe64ad06f0223ab2d (patch)
tree53ae80ab4a55488b30ae170f22c6f71d0baa3172 /src/nvim/regexp_nfa.c
parent78e69412acb481c7ad56e68c541f5c5383992d5b (diff)
downloadrneovim-77e25e56d8ccc0c174305f9fe64ad06f0223ab2d.tar.gz
rneovim-77e25e56d8ccc0c174305f9fe64ad06f0223ab2d.tar.bz2
rneovim-77e25e56d8ccc0c174305f9fe64ad06f0223ab2d.zip
vim-patch:8.2.4693: new regexp does not accept pattern "\%>0v"
Problem: new regexp does not accept pattern "\%>0v". Solution: Do accept digit zero. https://github.com/vim/vim/commit/72bb10df1fb3eb69bc91f5babfb8881ce098cba1 Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src/nvim/regexp_nfa.c')
-rw-r--r--src/nvim/regexp_nfa.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/nvim/regexp_nfa.c b/src/nvim/regexp_nfa.c
index a2f4e209f1..c93164ed7e 100644
--- a/src/nvim/regexp_nfa.c
+++ b/src/nvim/regexp_nfa.c
@@ -2141,6 +2141,7 @@ static int nfa_regatom(void)
int64_t n = 0;
const int cmp = c;
bool cur = false;
+ bool got_digit = false;
if (c == '<' || c == '>') {
c = getchr();
@@ -2161,11 +2162,12 @@ static int nfa_regatom(void)
}
n = n * 10 + (c - '0');
c = getchr();
+ got_digit = true;
}
if (c == 'l' || c == 'c' || c == 'v') {
int32_t limit = INT32_MAX;
- if (!cur && n == 0) {
+ if (!cur && !got_digit) {
semsg(_(e_nfa_regexp_missing_value_in_chr), no_Magic(c));
return FAIL;
}