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/main.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/main.c')
-rw-r--r-- | src/main.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/main.c b/src/main.c index d01cf9b07..983595053 100644 --- a/src/main.c +++ b/src/main.c @@ -2684,7 +2684,7 @@ create_windows(mparm_T *parmp UNUSED) if (recoverymode) /* do recover */ { msg_scroll = TRUE; /* scroll message up */ - ml_recover(); + ml_recover(TRUE); if (curbuf->b_ml.ml_mfp == NULL) /* failed */ getout(1); do_modelines(0); /* do modelines */ @@ -3101,18 +3101,18 @@ source_startup_scripts(mparm_T *parmp) i = FAIL; if (fullpathcmp((char_u *)USR_VIMRC_FILE, - (char_u *)VIMRC_FILE, FALSE) != FPC_SAME + (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME #ifdef USR_VIMRC_FILE2 && fullpathcmp((char_u *)USR_VIMRC_FILE2, - (char_u *)VIMRC_FILE, FALSE) != FPC_SAME + (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME #endif #ifdef USR_VIMRC_FILE3 && fullpathcmp((char_u *)USR_VIMRC_FILE3, - (char_u *)VIMRC_FILE, FALSE) != FPC_SAME + (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME #endif #ifdef SYS_VIMRC_FILE && fullpathcmp((char_u *)SYS_VIMRC_FILE, - (char_u *)VIMRC_FILE, FALSE) != FPC_SAME + (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME #endif ) i = do_source((char_u *)VIMRC_FILE, TRUE, DOSO_VIMRC); @@ -3127,10 +3127,10 @@ source_startup_scripts(mparm_T *parmp) secure = 0; #endif if ( fullpathcmp((char_u *)USR_EXRC_FILE, - (char_u *)EXRC_FILE, FALSE) != FPC_SAME + (char_u *)EXRC_FILE, FALSE, TRUE) != FPC_SAME #ifdef USR_EXRC_FILE2 && fullpathcmp((char_u *)USR_EXRC_FILE2, - (char_u *)EXRC_FILE, FALSE) != FPC_SAME + (char_u *)EXRC_FILE, FALSE, TRUE) != FPC_SAME #endif ) (void)do_source((char_u *)EXRC_FILE, FALSE, DOSO_NONE); |