summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-01-12 16:29:30 +0100
committerBram Moolenaar <Bram@vim.org>2019-01-12 16:29:30 +0100
commite3c74d249ac36404d8af25f74baf335d143b30e3 (patch)
tree239c4aa1e52da86d1d87cb163e2b4ad518c7752b /src
parent2be7cb73f66cf69659195d9a8ad4beaa359f2865 (diff)
downloadvim-git-e3c74d249ac36404d8af25f74baf335d143b30e3.tar.gz
patch 8.1.0734: the hlsearch state is not stored in a session filev8.1.0734
Problem: The hlsearch state is not stored in a session file. Solution: Add "nohlsearch" if appropriate. (Jason Franklin)
Diffstat (limited to 'src')
-rw-r--r--src/ex_docmd.c4
-rw-r--r--src/testdir/test_mksession.vim18
-rw-r--r--src/version.c2
3 files changed, 24 insertions, 0 deletions
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
@@ -796,6 +796,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 734,
+/**/
733,
/**/
732,