patch 8.2.3543: swapname has double slash when 'directory' ends in it

Problem:    Swapname has double slash when 'directory' ends in double slash.
            (Shane Smith)
Solution:   Remove the superfluous slash. (closes #8876)
diff --git a/src/memline.c b/src/memline.c
index bfbf4e2..f54a970 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -2064,7 +2064,9 @@
 /*
  * Need _very_ long file names.
  * Append the full path to name with path separators made into percent
- * signs, to dir. An unnamed buffer is handled as "" (<currentdir>/"")
+ * signs, to "dir". An unnamed buffer is handled as "" (<currentdir>/"")
+ * The last character in "dir" must be an extra slash or backslash, it is
+ * removed.
  */
     char_u *
 make_percent_swname(char_u *dir, char_u *name)
@@ -2081,6 +2083,8 @@
 	    for (d = s; *d != NUL; MB_PTR_ADV(d))
 		if (vim_ispathsep(*d))
 		    *d = '%';
+
+	    dir[STRLEN(dir) - 1] = NUL;  // remove one trailing slash
 	    d = concat_fnames(dir, s, TRUE);
 	    vim_free(s);
 	}