aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/fold.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-10-07 09:43:16 +0800
committerGitHub <noreply@github.com>2022-10-07 09:43:16 +0800
commitcfdb4cbada8c65aa57e69776bcc0f7b8b298317a (patch)
treef367b6d7d2315ab67ee6ec36384fb4f0980002d0 /src/nvim/fold.c
parentd191070913dc195309926a91f97008defd877a71 (diff)
downloadrneovim-cfdb4cbada8c65aa57e69776bcc0f7b8b298317a.tar.gz
rneovim-cfdb4cbada8c65aa57e69776bcc0f7b8b298317a.tar.bz2
rneovim-cfdb4cbada8c65aa57e69776bcc0f7b8b298317a.zip
fix: find multibyte file name in line (#20519)
And remove unnecessary unsigned casts in fold marker comparison.
Diffstat (limited to 'src/nvim/fold.c')
-rw-r--r--src/nvim/fold.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/nvim/fold.c b/src/nvim/fold.c
index 76fc531627..1872558669 100644
--- a/src/nvim/fold.c
+++ b/src/nvim/fold.c
@@ -3002,9 +3002,9 @@ static void foldlevelMarker(fline_T *flp)
// cache a few values for speed
char *startmarker = flp->wp->w_p_fmr;
- int cstart = (unsigned char)(*startmarker);
+ char cstart = *startmarker;
startmarker++;
- int cend = (unsigned char)(*foldendmarker);
+ char cend = *foldendmarker;
// Default: no start found, next level is same as current level
flp->start = 0;
@@ -3012,7 +3012,7 @@ static void foldlevelMarker(fline_T *flp)
char *s = ml_get_buf(flp->wp->w_buffer, flp->lnum + flp->off, false);
while (*s) {
- if ((unsigned char)(*s) == cstart
+ if (*s == cstart
&& STRNCMP(s + 1, startmarker, foldstartmarkerlen - 1) == 0) {
// found startmarker: set flp->lvl
s += foldstartmarkerlen;
@@ -3032,7 +3032,7 @@ static void foldlevelMarker(fline_T *flp)
flp->lvl_next++;
flp->start++;
}
- } else if ((unsigned char)(*s) == cend
+ } else if (*s == cend
&& STRNCMP(s + 1, foldendmarker + 1, foldendmarkerlen - 1) == 0) {
// found endmarker: set flp->lvl_next
s += foldendmarkerlen;