comparison src/main.c @ 16738:b52ea9c5f1db v8.1.1371

patch 8.1.1371: cannot recover from a swap file commit https://github.com/vim/vim/commit/99499b1c05f85f83876b828eea3f6e14f0f407b4 Author: Bram Moolenaar <Bram@vim.org> Date: Thu May 23 21:35:48 2019 +0200 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)
author Bram Moolenaar <Bram@vim.org>
date Thu, 23 May 2019 21:45:07 +0200
parents 7e733046db1d
children 73ff6357da5b
comparison
equal deleted inserted replaced
16737:e56018f01ba7 16738:b52ea9c5f1db
2682 parmp->window_count = 1; 2682 parmp->window_count = 1;
2683 2683
2684 if (recoverymode) /* do recover */ 2684 if (recoverymode) /* do recover */
2685 { 2685 {
2686 msg_scroll = TRUE; /* scroll message up */ 2686 msg_scroll = TRUE; /* scroll message up */
2687 ml_recover(); 2687 ml_recover(TRUE);
2688 if (curbuf->b_ml.ml_mfp == NULL) /* failed */ 2688 if (curbuf->b_ml.ml_mfp == NULL) /* failed */
2689 getout(1); 2689 getout(1);
2690 do_modelines(0); /* do modelines */ 2690 do_modelines(0); /* do modelines */
2691 } 2691 }
2692 else 2692 else
3099 #endif 3099 #endif
3100 secure = p_secure; 3100 secure = p_secure;
3101 3101
3102 i = FAIL; 3102 i = FAIL;
3103 if (fullpathcmp((char_u *)USR_VIMRC_FILE, 3103 if (fullpathcmp((char_u *)USR_VIMRC_FILE,
3104 (char_u *)VIMRC_FILE, FALSE) != FPC_SAME 3104 (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME
3105 #ifdef USR_VIMRC_FILE2 3105 #ifdef USR_VIMRC_FILE2
3106 && fullpathcmp((char_u *)USR_VIMRC_FILE2, 3106 && fullpathcmp((char_u *)USR_VIMRC_FILE2,
3107 (char_u *)VIMRC_FILE, FALSE) != FPC_SAME 3107 (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME
3108 #endif 3108 #endif
3109 #ifdef USR_VIMRC_FILE3 3109 #ifdef USR_VIMRC_FILE3
3110 && fullpathcmp((char_u *)USR_VIMRC_FILE3, 3110 && fullpathcmp((char_u *)USR_VIMRC_FILE3,
3111 (char_u *)VIMRC_FILE, FALSE) != FPC_SAME 3111 (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME
3112 #endif 3112 #endif
3113 #ifdef SYS_VIMRC_FILE 3113 #ifdef SYS_VIMRC_FILE
3114 && fullpathcmp((char_u *)SYS_VIMRC_FILE, 3114 && fullpathcmp((char_u *)SYS_VIMRC_FILE,
3115 (char_u *)VIMRC_FILE, FALSE) != FPC_SAME 3115 (char_u *)VIMRC_FILE, FALSE, TRUE) != FPC_SAME
3116 #endif 3116 #endif
3117 ) 3117 )
3118 i = do_source((char_u *)VIMRC_FILE, TRUE, DOSO_VIMRC); 3118 i = do_source((char_u *)VIMRC_FILE, TRUE, DOSO_VIMRC);
3119 3119
3120 if (i == FAIL) 3120 if (i == FAIL)
3125 secure = p_secure; 3125 secure = p_secure;
3126 else 3126 else
3127 secure = 0; 3127 secure = 0;
3128 #endif 3128 #endif
3129 if ( fullpathcmp((char_u *)USR_EXRC_FILE, 3129 if ( fullpathcmp((char_u *)USR_EXRC_FILE,
3130 (char_u *)EXRC_FILE, FALSE) != FPC_SAME 3130 (char_u *)EXRC_FILE, FALSE, TRUE) != FPC_SAME
3131 #ifdef USR_EXRC_FILE2 3131 #ifdef USR_EXRC_FILE2
3132 && fullpathcmp((char_u *)USR_EXRC_FILE2, 3132 && fullpathcmp((char_u *)USR_EXRC_FILE2,
3133 (char_u *)EXRC_FILE, FALSE) != FPC_SAME 3133 (char_u *)EXRC_FILE, FALSE, TRUE) != FPC_SAME
3134 #endif 3134 #endif
3135 ) 3135 )
3136 (void)do_source((char_u *)EXRC_FILE, FALSE, DOSO_NONE); 3136 (void)do_source((char_u *)EXRC_FILE, FALSE, DOSO_NONE);
3137 } 3137 }
3138 } 3138 }