mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
patch 8.1.0238: 'buftype' is cleared when using ":term ++hidden cat"
Problem: 'buftype' is cleared when using ":term ++hidden cat". (Marcin Szamotulski) Solution: Set the "options initialized" flag earlier. (closes #3278)
This commit is contained in:
@@ -529,6 +529,8 @@ term_start(
|
||||
|
||||
set_string_option_direct((char_u *)"buftype", -1,
|
||||
(char_u *)"terminal", OPT_FREE|OPT_LOCAL, 0);
|
||||
// Avoid that 'buftype' is reset when this buffer is entered.
|
||||
curbuf->b_p_initialized = TRUE;
|
||||
|
||||
/* Mark the buffer as not modifiable. It can only be made modifiable after
|
||||
* the job finished. */
|
||||
|
@@ -1605,3 +1605,19 @@ func Test_zz2_terminal_guioptions_bang()
|
||||
set guioptions&
|
||||
call delete(filename)
|
||||
endfunc
|
||||
|
||||
func Test_terminal_hidden()
|
||||
if !has('unix')
|
||||
return
|
||||
endif
|
||||
term ++hidden cat
|
||||
let bnr = bufnr('$')
|
||||
call assert_equal('terminal', getbufvar(bnr, '&buftype'))
|
||||
exe 'sbuf ' . bnr
|
||||
call assert_equal('terminal', &buftype)
|
||||
call term_sendkeys(bnr, "asdf\<CR>")
|
||||
call WaitForAssert({-> assert_match('asdf', term_getline(bnr, 2))})
|
||||
call term_sendkeys(bnr, "\<C-D>")
|
||||
call WaitForAssert({-> assert_equal('finished', term_getstatus(bnr))})
|
||||
bwipe!
|
||||
endfunc
|
||||
|
@@ -794,6 +794,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
238,
|
||||
/**/
|
||||
237,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user