patch 8.1.2180: Error E303 is not useful when 'directory' is empty
Problem: Error E303 is not useful when 'directory' is empty.
Solution: Skip the error message. (Daniel Hahler, #5067)
diff --git a/src/memline.c b/src/memline.c
index c77d1df..a26e401 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -804,9 +804,9 @@
}
}
- if (mfp->mf_fname == NULL) /* Failed! */
+ if (*p_dir != NUL && mfp->mf_fname == NULL)
{
- need_wait_return = TRUE; /* call wait_return later */
+ need_wait_return = TRUE; // call wait_return later
++no_wait_return;
(void)semsg(_("E303: Unable to open swap file for \"%s\", recovery impossible"),
buf_spname(buf) != NULL ? buf_spname(buf) : buf->b_fname);
diff --git a/src/testdir/test_recover.vim b/src/testdir/test_recover.vim
index a9934a1..a1c7bc4 100644
--- a/src/testdir/test_recover.vim
+++ b/src/testdir/test_recover.vim
@@ -12,6 +12,12 @@
set dir=/notexist/
endif
call assert_fails('split Xtest', 'E303:')
+
+ " No error with empty 'directory' setting.
+ set directory=
+ split XtestOK
+ close!
+
set dir&
endfunc
diff --git a/src/version.c b/src/version.c
index 38f8277..aebadab 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2180,
+/**/
2179,
/**/
2178,