diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-03-29 20:38:59 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-03-29 20:38:59 +0200 |
commit | 8da1e6cedf839902e15987a98733ebd31b5f1b81 (patch) | |
tree | 39e31f70f01f9a64d478f99eb7f1ebf9ba6ab1e7 /src | |
parent | bf3d58073f7b34b2d65d1d08a728d1164e03cceb (diff) | |
download | vim-git-8da1e6cedf839902e15987a98733ebd31b5f1b81.tar.gz |
patch 8.0.0524: folds messed upv8.0.0524
Problem: Folds are messed up when 'encodin' is "utf-8".
Solution: Also set the fold character when it's not multi-byte.
Diffstat (limited to 'src')
-rw-r--r-- | src/screen.c | 3 | ||||
-rw-r--r-- | src/testdir/test_display.vim | 10 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 15 insertions, 0 deletions
diff --git a/src/screen.c b/src/screen.c index ceb30e337..fbfded1a2 100644 --- a/src/screen.c +++ b/src/screen.c @@ -2700,7 +2700,10 @@ fold_line( ScreenLines[off + col] = 0x80; /* avoid storing zero */ } else + { ScreenLinesUC[off + col] = 0; + ScreenLines[off + col] = fill_fold; + } col++; } else diff --git a/src/testdir/test_display.vim b/src/testdir/test_display.vim index 4253b5693..48b7a2318 100644 --- a/src/testdir/test_display.vim +++ b/src/testdir/test_display.vim @@ -54,6 +54,16 @@ func! Test_display_foldtext_mbyte() \ " 14 \u2502", \ ] call assert_equal(expect, lines) + + set fillchars=fold:-,vert:\| + let lines=ScreenLines([1,3], winwidth(0)+1) + let expect=[ + \ " 1 |", + \ "+ +-- 12 lines: 2". repeat("-", 23). "|", + \ " 14 |", + \ ] + call assert_equal(expect, lines) + set foldtext& fillchars& foldmethod& fdc& bw! endfunc diff --git a/src/version.c b/src/version.c index c3f118936..f490deba1 100644 --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 524, +/**/ 523, /**/ 522, |