0
0
mirror of https://github.com/vim/vim.git synced 2025-07-04 23:07:33 -04:00

patch 8.0.0031

Problem:    After ":bwipeout" 'fileformat' is not set to the right default.
Solution:   Get the default from 'fileformats'. (Mike Williams)
This commit is contained in:
Bram Moolenaar 2016-10-12 17:45:29 +02:00
parent 0ba407012c
commit e8ef3a0934
5 changed files with 35 additions and 2 deletions

View File

@ -2081,6 +2081,7 @@ test_arglist \
test_farsi \
test_feedkeys \
test_file_perm \
test_fileformat \
test_filter_cmd \
test_filter_map \
test_fnameescape \

View File

@ -10729,7 +10729,19 @@ buf_copy_options(buf_T *buf, int flags)
#ifdef FEAT_MBYTE
buf->b_p_fenc = vim_strsave(p_fenc);
#endif
buf->b_p_ff = vim_strsave(p_ff);
switch (*p_ffs)
{
case 'm':
buf->b_p_ff = vim_strsave((char_u *)FF_MAC); break;
case 'd':
buf->b_p_ff = vim_strsave((char_u *)FF_DOS); break;
case 'u':
buf->b_p_ff = vim_strsave((char_u *)FF_UNIX); break;
default:
buf->b_p_ff = vim_strsave(p_ff);
}
if (buf->b_p_ff != NULL)
buf->b_start_ffc = *buf->b_p_ff;
#if defined(FEAT_QUICKFIX)
buf->b_p_bh = empty_option;
buf->b_p_bt = empty_option;

View File

@ -12,10 +12,11 @@ source test_expand.vim
source test_expr.vim
source test_expand_dllpath.vim
source test_feedkeys.vim
source test_fnamemodify.vim
source test_file_perm.vim
source test_fileformat.vim
source test_filter_cmd.vim
source test_filter_map.vim
source test_fnamemodify.vim
source test_glob2regpat.vim
source test_goto.vim
source test_help_tagjump.vim

View File

@ -0,0 +1,17 @@
" Test behavior of fileformat after bwipeout of last buffer
func Test_fileformat_after_bw()
bwipeout
set fileformat&
if &fileformat == 'dos'
let test_fileformats = 'unix'
elseif &fileformat == 'unix'
let test_fileformats = 'mac'
else " must be mac
let test_fileformats = 'dos'
endif
exec 'set fileformats='.test_fileformats
bwipeout!
call assert_equal(test_fileformats, &fileformat)
set fileformats&
endfunc

View File

@ -764,6 +764,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
31,
/**/
30,
/**/