diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-05-23 21:35:48 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-05-23 21:35:48 +0200 |
commit | 99499b1c05f85f83876b828eea3f6e14f0f407b4 (patch) | |
tree | 88da7aeb6c66daf0c6555388952334efa8cb642e /src/spell.c | |
parent | 05b8b07e2770b66ab77fdb5e195cae809959bdab (diff) | |
download | vim-git-99499b1c05f85f83876b828eea3f6e14f0f407b4.tar.gz |
patch 8.1.1371: cannot recover from a swap filev8.1.1371
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)
Diffstat (limited to 'src/spell.c')
-rw-r--r-- | src/spell.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/spell.c b/src/spell.c index 8f32fd7c3..fbe20802c 100644 --- a/src/spell.c +++ b/src/spell.c @@ -2343,7 +2343,7 @@ did_set_spelllang(win_T *wp) /* Check if we loaded this language before. */ for (slang = first_lang; slang != NULL; slang = slang->sl_next) - if (fullpathcmp(lang, slang->sl_fname, FALSE) == FPC_SAME) + if (fullpathcmp(lang, slang->sl_fname, FALSE, TRUE) == FPC_SAME) break; } else @@ -2395,7 +2395,8 @@ did_set_spelllang(win_T *wp) * Loop over the languages, there can be several files for "lang". */ for (slang = first_lang; slang != NULL; slang = slang->sl_next) - if (filename ? fullpathcmp(lang, slang->sl_fname, FALSE) == FPC_SAME + if (filename ? fullpathcmp(lang, slang->sl_fname, FALSE, TRUE) + == FPC_SAME : STRICMP(lang, slang->sl_name) == 0) { region_mask = REGION_ALL; @@ -2463,7 +2464,8 @@ did_set_spelllang(win_T *wp) for (c = 0; c < ga.ga_len; ++c) { p = LANGP_ENTRY(ga, c)->lp_slang->sl_fname; - if (p != NULL && fullpathcmp(spf_name, p, FALSE) == FPC_SAME) + if (p != NULL && fullpathcmp(spf_name, p, FALSE, TRUE) + == FPC_SAME) break; } if (c < ga.ga_len) @@ -2472,7 +2474,8 @@ did_set_spelllang(win_T *wp) /* Check if it was loaded already. */ for (slang = first_lang; slang != NULL; slang = slang->sl_next) - if (fullpathcmp(spf_name, slang->sl_fname, FALSE) == FPC_SAME) + if (fullpathcmp(spf_name, slang->sl_fname, FALSE, TRUE) + == FPC_SAME) break; if (slang == NULL) { |