patch 8.2.1804: resolve('/') returns an empty string

Problem:    resolve('/') returns an empty string.
Solution:   Don't remove single slash. (closes #7074)
diff --git a/src/filepath.c b/src/filepath.c
index e2131a4..b692e22 100644
--- a/src/filepath.c
+++ b/src/filepath.c
@@ -1889,7 +1889,7 @@
 	    is_relative_to_current = TRUE;
 
 	len = STRLEN(p);
-	if (len > 0 && after_pathsep(p, p + len))
+	if (len > 1 && after_pathsep(p, p + len))
 	{
 	    has_trailing_pathsep = TRUE;
 	    p[len - 1] = NUL; // the trailing slash breaks readlink()
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index 45b997f..b816125 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -339,6 +339,8 @@
   call assert_equal('Xlink2', resolve('Xlink1'))
   call assert_equal('./Xlink2', resolve('./Xlink1'))
   call delete('Xlink1')
+
+  call assert_equal('/', resolve('/'))
 endfunc
 
 func s:normalize_fname(fname)
diff --git a/src/version.c b/src/version.c
index e4bc870..cfd0d54 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1804,
+/**/
     1803,
 /**/
     1802,