From 8da1e6cedf839902e15987a98733ebd31b5f1b81 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Wed, 29 Mar 2017 20:38:59 +0200 Subject: patch 8.0.0524: folds messed up Problem: Folds are messed up when 'encodin' is "utf-8". Solution: Also set the fold character when it's not multi-byte. --- src/screen.c | 3 +++ src/testdir/test_display.vim | 10 ++++++++++ src/version.c | 2 ++ 3 files changed, 15 insertions(+) (limited to 'src') 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 @@ -764,6 +764,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 524, /**/ 523, /**/ -- cgit v1.2.1