# HG changeset patch # User Bram Moolenaar # Date 1618686903 -7200 # Node ID e79d1475fc893f163d6233444b991e94c8b2e5c5 # Parent 96905804bf5a529fc52620cb666c1e6e4903e8ef patch 8.2.2778: problem restoring 'packpath' in session Commit: https://github.com/vim/vim/commit/d23b714d8b9ed8e16ef553098acc6da0979e94fc Author: Bram Moolenaar Date: Sat Apr 17 21:04:34 2021 +0200 patch 8.2.2778: problem restoring 'packpath' in session Problem: Problem restoring 'packpath' in session. Solution: Let "skiprtp" also apply to 'packpath'. diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -6511,7 +6511,7 @@ A jump table for the options with a shor global values for local options) options all options and mappings (also global values for local options) - skiprtp exclude 'runtimepath' from the options + skiprtp exclude 'runtimepath' and 'packpath' from the options resize size of the Vim window: 'lines' and 'columns' sesdir the directory in which the session file is located will become the current directory (useful with diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -4615,7 +4615,8 @@ makeset(FILE *fd, int opt_flags, int loc if ((opt_flags & OPT_GLOBAL) && optval_default(p, varp, p_cp)) continue; - if ((opt_flags & OPT_SKIPRTP) && p->var == (char_u *)&p_rtp) + if ((opt_flags & OPT_SKIPRTP) && (p->var == (char_u *)&p_rtp + || p->var == (char_u *)&p_pp)) continue; round = 2; diff --git a/src/testdir/test_mksession.vim b/src/testdir/test_mksession.vim --- a/src/testdir/test_mksession.vim +++ b/src/testdir/test_mksession.vim @@ -133,21 +133,25 @@ endfunc def Test_mksession_skiprtp() mksession! Xtest_mks.out - var found = 0 + var found_rtp = 0 + var found_pp = 0 for line in readfile('Xtest_mks.out') if line =~ 'set runtimepath' - found = 1 - break + found_rtp += 1 + endif + if line =~ 'set packpath' + found_pp += 1 endif endfor - assert_equal(1, found) + assert_equal(1, found_rtp) + assert_equal(1, found_pp) delete('Xtest_mks.out') set sessionoptions+=skiprtp mksession! Xtest_mks.out - found = 0 + var found = 0 for line in readfile('Xtest_mks.out') - if line =~ 'set runtimepath' + if line =~ 'set \(runtimepath\|packpath\)' found = 1 break endif diff --git a/src/version.c b/src/version.c --- 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 */ /**/ + 2778, +/**/ 2777, /**/ 2776,