mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.0.0816: crash when using invalid buffer number
Problem: Crash when using invalid buffer number. Solution: Check for NULL buffer. (Yasuhiro Matsumoto, closes #1899)
This commit is contained in:
parent
43c007ff22
commit
f144a3fb73
@ -1686,7 +1686,7 @@ term_get_buf(typval_T *argvars)
|
|||||||
++emsg_off;
|
++emsg_off;
|
||||||
buf = get_buf_tv(&argvars[0], FALSE);
|
buf = get_buf_tv(&argvars[0], FALSE);
|
||||||
--emsg_off;
|
--emsg_off;
|
||||||
if (buf->b_term == NULL)
|
if (buf == NULL || buf->b_term == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
@ -54,6 +54,9 @@ func Test_terminal_scrape()
|
|||||||
call assert_equal(1, len(termlist))
|
call assert_equal(1, len(termlist))
|
||||||
call assert_equal(buf, termlist[0])
|
call assert_equal(buf, termlist[0])
|
||||||
|
|
||||||
|
" Nothing happens with invalid buffer number
|
||||||
|
call term_wait(1234)
|
||||||
|
|
||||||
call term_wait(buf)
|
call term_wait(buf)
|
||||||
call Check_123(buf)
|
call Check_123(buf)
|
||||||
|
|
||||||
@ -64,4 +67,5 @@ func Test_terminal_scrape()
|
|||||||
call Check_123(buf)
|
call Check_123(buf)
|
||||||
|
|
||||||
exe buf . 'bwipe'
|
exe buf . 'bwipe'
|
||||||
|
call delete('Xtext')
|
||||||
endfunc
|
endfunc
|
||||||
|
@ -769,6 +769,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
816,
|
||||||
/**/
|
/**/
|
||||||
815,
|
815,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user