diff options
author | Bram Moolenaar <Bram@vim.org> | 2021-03-13 13:52:33 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-03-13 13:52:33 +0100 |
commit | 0756f757edba755b75e0c9c612ab2f7e673def84 (patch) | |
tree | 16cb463550e90a09bc3788cf47fadaa39ab36047 | |
parent | 0de8e2d6a3fae61c4d9dfdd6f16fc5040d994f6c (diff) | |
download | vim-git-0756f757edba755b75e0c9c612ab2f7e673def84.tar.gz |
patch 8.2.2594: alternate buffer added to session file even when it's hiddenv8.2.2594
Problem: Alternate buffer added to session file even when it's hidden.
Solution: Check the 'buflisted' option. (closes #7951)
-rw-r--r-- | src/session.c | 3 | ||||
-rw-r--r-- | src/testdir/test_mksession.vim | 14 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 18 insertions, 1 deletions
diff --git a/src/session.c b/src/session.c index a734656d5..6e73bb676 100644 --- a/src/session.c +++ b/src/session.c @@ -401,11 +401,12 @@ put_view( { buf_T *alt = buflist_findnr(wp->w_alt_fnum); - // Set the alternate file. + // Set the alternate file if the buffer is listed. if ((flagp == &ssop_flags) && alt != NULL && alt->b_fname != NULL && *alt->b_fname != NUL + && alt->b_p_bl && (fputs("balt ", fd) < 0 || ses_fname(fd, alt, flagp, TRUE) == FAIL)) return FAIL; diff --git a/src/testdir/test_mksession.vim b/src/testdir/test_mksession.vim index eb8c6a5a4..6e3655373 100644 --- a/src/testdir/test_mksession.vim +++ b/src/testdir/test_mksession.vim @@ -544,6 +544,20 @@ func Test_mkview_no_balt() %bwipe endfunc +func Test_mksession_no_balt() + edit Xtestfile1 + edit Xtestfile2 + + bdelete Xtestfile1 + mksession! Xtestview + + source Xtestview + call assert_equal(0, buflisted('Xtestfile1')) + + call delete('Xtestview') + %bwipe +endfunc + " Test :mkview with a file argument. func Test_mkview_file() " Create a view with line number and a fold. diff --git a/src/version.c b/src/version.c index 45973eac2..f1b823226 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2594, +/**/ 2593, /**/ 2592, |