From e3c74d249ac36404d8af25f74baf335d143b30e3 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sat, 12 Jan 2019 16:29:30 +0100 Subject: patch 8.1.0734: the hlsearch state is not stored in a session file Problem: The hlsearch state is not stored in a session file. Solution: Add "nohlsearch" if appropriate. (Jason Franklin) --- src/ex_docmd.c | 4 ++++ src/testdir/test_mksession.vim | 18 ++++++++++++++++++ src/version.c | 2 ++ 3 files changed, 24 insertions(+) diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 354cc119b..7dc619820 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -10144,6 +10144,10 @@ ex_mkrc( if (put_line(fd, "let &so = s:so_save | let &siso = s:siso_save") == FAIL) failed = TRUE; +# ifdef FEAT_SEARCH_EXTRA + if (no_hlsearch && put_line(fd, "nohlsearch") == FAIL) + failed = TRUE; +# endif if (put_line(fd, "doautoall SessionLoadPost") == FAIL) failed = TRUE; if (eap->cmdidx == CMD_mksession) diff --git a/src/testdir/test_mksession.vim b/src/testdir/test_mksession.vim index fa08685ac..4d524da0d 100644 --- a/src/testdir/test_mksession.vim +++ b/src/testdir/test_mksession.vim @@ -198,6 +198,24 @@ func Test_mksession_blank_tabs() call delete('Xtest_mks.out') endfunc +if has('extra_search') + +func Test_mksession_hlsearch() + set hlsearch + mksession! Xtest_mks.out + nohlsearch + source Xtest_mks.out + call assert_equal(1, v:hlsearch, 'session should restore search highlighting state') + nohlsearch + mksession! Xtest_mks.out + source Xtest_mks.out + call assert_equal(0, v:hlsearch, 'session should restore search highlighting state') + call delete('Xtest_mks.out') +endfunc + +endif + + func Test_mksession_blank_windows() split split diff --git a/src/version.c b/src/version.c index a967fea42..11b555fcf 100644 --- a/src/version.c +++ b/src/version.c @@ -795,6 +795,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 734, /**/ 733, /**/ -- cgit v1.2.1