neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 9a2dd52a6a2a17ae85102d738ab3620ef978d448
parent 8c344378b8c22a0d47db294daa7483763c75fba6
Author: zeertzjq <zeertzjq@outlook.com>
Date:   Wed, 18 Jan 2023 06:27:45 +0800

vim-patch:9.0.1215: using isalpha() adds dependency on current locale

Problem:    Using isalpha() adds dependency on current locale.
Solution:   Do not use isalpha() for recognizing a URL or the end of an Ex
            command. (closes vim/vim#11835)

https://github.com/vim/vim/commit/0ef9a5c09482649cf0cc6768ed6fc640b4ed2a0a

Diffstat:
Msrc/nvim/ex_docmd.c | 2+-
Msrc/nvim/option.c | 2+-
Msrc/nvim/path.c | 4++--
3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c @@ -2852,7 +2852,7 @@ bool checkforcmd(char **pp, const char *cmd, int len) break; } } - if (i >= len && !isalpha((uint8_t)(*pp)[i])) { + if (i >= len && !ASCII_ISALPHA((*pp)[i])) { *pp = skipwhite(*pp + i); return true; } diff --git a/src/nvim/option.c b/src/nvim/option.c @@ -1106,7 +1106,7 @@ int do_set(char *arg, int opt_flags) char *errmsg = NULL; char *startarg = arg; // remember for error message - if (strncmp(arg, "all", 3) == 0 && !isalpha((uint8_t)arg[3]) + if (strncmp(arg, "all", 3) == 0 && !ASCII_ISALPHA(arg[3]) && !(opt_flags & OPT_MODELINE)) { // ":set all" show all options. // ":set all&" set all options to their default value. diff --git a/src/nvim/path.c b/src/nvim/path.c @@ -1768,7 +1768,7 @@ int path_with_url(const char *fname) // non-URL text. // first character must be alpha - if (!isalpha((uint8_t)(*fname))) { + if (!ASCII_ISALPHA(*fname)) { return 0; } @@ -1777,7 +1777,7 @@ int path_with_url(const char *fname) } // check body: alpha or dash - for (p = fname + 1; (isalpha((uint8_t)(*p)) || (*p == '-')); p++) {} + for (p = fname + 1; (ASCII_ISALPHA(*p) || (*p == '-')); p++) {} // check last char is not a dash if (p[-1] == '-') {