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/src/option.c b/src/option.c
index d7997b0..3c248c1 100644
--- a/src/option.c
+++ b/src/option.c
@@ -4615,7 +4615,8 @@
 	    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
index 25c5081..045aa2d 100644
--- a/src/testdir/test_mksession.vim
+++ b/src/testdir/test_mksession.vim
@@ -133,21 +133,25 @@
 
 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
index 17afa34..83d7e57 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2778,
+/**/
     2777,
 /**/
     2776,