diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-05-19 21:36:31 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-19 21:36:31 -0400 |
commit | 30befcdce47b4964b4d2a5aeb078ddec8e2fcc0b (patch) | |
tree | d8df645e9f993a6903dda09fdf5d24c45680850b /src/nvim/ex_docmd.c | |
parent | 045e47ec5522b6449e849bc343697ab81ebd7814 (diff) | |
parent | 49ab1b91e7cccb4fc5edad6d2fa8c547fb38942b (diff) | |
download | rneovim-30befcdce47b4964b4d2a5aeb078ddec8e2fcc0b.tar.gz rneovim-30befcdce47b4964b4d2a5aeb078ddec8e2fcc0b.tar.bz2 rneovim-30befcdce47b4964b4d2a5aeb078ddec8e2fcc0b.zip |
Merge pull request #14592 from janlazo/vim-8.2.2869
vim-patch:8.2.{2869,2871}
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r-- | src/nvim/ex_docmd.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index c557bb2438..c93f9fe6f2 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -1772,7 +1772,7 @@ static char_u * do_one_cmd(char_u **cmdlinep, // count, it's a buffer name. /// if ((ea.argt & EX_COUNT) && ascii_isdigit(*ea.arg) - && (!(ea.argt & EX_BUFNAME) || *(p = skipdigits(ea.arg)) == NUL + && (!(ea.argt & EX_BUFNAME) || *(p = skipdigits(ea.arg + 1)) == NUL || ascii_iswhite(*p))) { n = getdigits_long(&ea.arg, false, -1); ea.arg = skipwhite(ea.arg); @@ -2790,15 +2790,18 @@ static struct cmdmod { */ int modifier_len(char_u *cmd) { - int i, j; char_u *p = cmd; - if (ascii_isdigit(*cmd)) - p = skipwhite(skipdigits(cmd)); - for (i = 0; i < (int)ARRAY_SIZE(cmdmods); ++i) { - for (j = 0; p[j] != NUL; ++j) - if (p[j] != cmdmods[i].name[j]) + if (ascii_isdigit(*cmd)) { + p = skipwhite(skipdigits(cmd + 1)); + } + for (int i = 0; i < (int)ARRAY_SIZE(cmdmods); i++) { + int j; + for (j = 0; p[j] != NUL; j++) { + if (p[j] != cmdmods[i].name[j]) { break; + } + } if (j >= cmdmods[i].minlen && !ASCII_ISALPHA(p[j]) && (p == cmd || cmdmods[i].has_count)) { |