patch 8.1.1371: cannot recover from a swap file
Problem: Cannot recover from a swap file.
Solution: Do not expand environment variables in the swap file name.
Do not check the extension when we already know a file is a swap
file. (Ken Takata, closes 4415, closes #4369)
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 0174fd6..040514c 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -7002,7 +7002,8 @@
copy_option_part(&p, NameBuff, MAXPATHL, ",");
mustfree = FALSE;
rt = vim_getenv((char_u *)"VIMRUNTIME", &mustfree);
- if (rt != NULL && fullpathcmp(rt, NameBuff, FALSE) != FPC_SAME)
+ if (rt != NULL &&
+ fullpathcmp(rt, NameBuff, FALSE, TRUE) != FPC_SAME)
{
int fcount;
char_u **fnames;
@@ -7224,7 +7225,7 @@
*/
ga_init2(&ga, (int)sizeof(char_u *), 100);
if (add_help_tags || fullpathcmp((char_u *)"$VIMRUNTIME/doc",
- dir, FALSE) == FPC_SAME)
+ dir, FALSE, TRUE) == FPC_SAME)
{
if (ga_grow(&ga, 1) == FAIL)
got_int = TRUE;