patch 8.1.0789: sourcing a session sets v:errmsg

Problem:    Sourcing a session sets v:errmsg.
Solution:   Use "%argdel" instead of "argdel *". (Jason Franklin)
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 4722edd..387d26d 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -12007,7 +12007,7 @@
 
     if (fputs(cmd, fd) < 0 || put_eol(fd) == FAIL)
 	return FAIL;
-    if (put_line(fd, "silent! argdel *") == FAIL)
+    if (put_line(fd, "%argdel") == FAIL)
 	return FAIL;
     for (i = 0; i < gap->ga_len; ++i)
     {
diff --git a/src/testdir/test_mksession.vim b/src/testdir/test_mksession.vim
index 4d524da..00631f1 100644
--- a/src/testdir/test_mksession.vim
+++ b/src/testdir/test_mksession.vim
@@ -415,4 +415,16 @@
   %bwipe
 endfunc
 
+" A clean session (one empty buffer, one window, and one tab) should not
+" set any error messages when sourced because no commands should fail.
+func Test_mksession_no_errmsg()
+  let v:errmsg = ''
+  %bwipe!
+  mksession! Xtest_mks.out
+  source Xtest_mks.out
+  call assert_equal('', v:errmsg)
+  call delete('Xtest_mks.out')
+endfunc
+
+
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index fb1e356..3647397 100644
--- a/src/version.c
+++ b/src/version.c
@@ -792,6 +792,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    789,
+/**/
     788,
 /**/
     787,