mirror of
https://github.com/vim/vim.git
synced 2025-09-08 22:13:47 -04:00
patch 8.2.3589: failure when "term_rows" of term_start() is an unusual value
Problem: Failure when the "term_rows" argument of term_start() is an unusual value. Solution: Limit to range of zero to 1000. (closes #9116)
This commit is contained in:
parent
606efc7df4
commit
5300be620c
@ -871,7 +871,8 @@ term_start({cmd} [, {options}]) *term_start()*
|
|||||||
"term_name" name to use for the buffer name, instead
|
"term_name" name to use for the buffer name, instead
|
||||||
of the command name.
|
of the command name.
|
||||||
"term_rows" vertical size to use for the terminal,
|
"term_rows" vertical size to use for the terminal,
|
||||||
instead of using 'termwinsize'
|
instead of using 'termwinsize'; valid
|
||||||
|
range is from zero to 1000
|
||||||
"term_cols" horizontal size to use for the terminal,
|
"term_cols" horizontal size to use for the terminal,
|
||||||
instead of using 'termwinsize'
|
instead of using 'termwinsize'
|
||||||
"vertical" split the window vertically; note that
|
"vertical" split the window vertically; note that
|
||||||
|
@ -432,6 +432,11 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
|
|||||||
opt->jo_term_rows = tv_get_number_chk(item, &error);
|
opt->jo_term_rows = tv_get_number_chk(item, &error);
|
||||||
if (error)
|
if (error)
|
||||||
return FAIL;
|
return FAIL;
|
||||||
|
if (opt->jo_term_rows < 0 || opt->jo_term_rows > 1000)
|
||||||
|
{
|
||||||
|
semsg(_(e_invargval), "term_rows");
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (STRCMP(hi->hi_key, "term_cols") == 0)
|
else if (STRCMP(hi->hi_key, "term_cols") == 0)
|
||||||
{
|
{
|
||||||
|
@ -467,6 +467,8 @@ func Test_terminal_size()
|
|||||||
bwipe!
|
bwipe!
|
||||||
call assert_equal([7, 27], size)
|
call assert_equal([7, 27], size)
|
||||||
|
|
||||||
|
call assert_fails("call term_start(cmd, {'term_rows': -1})", 'E475:')
|
||||||
|
call assert_fails("call term_start(cmd, {'term_rows': 1001})", 'E475:')
|
||||||
if has('float')
|
if has('float')
|
||||||
call assert_fails("call term_start(cmd, {'term_rows': 10.0})", 'E805:')
|
call assert_fails("call term_start(cmd, {'term_rows': 10.0})", 'E805:')
|
||||||
endif
|
endif
|
||||||
|
@ -757,6 +757,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 */
|
||||||
|
/**/
|
||||||
|
3589,
|
||||||
/**/
|
/**/
|
||||||
3588,
|
3588,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user