# HG changeset patch # User Christian Brabandt # Date 1500736504 -7200 # Node ID 7e8a467acd6e3ffd408d64057004fafd49ff2a98 # Parent f129bc4378fef8abfead3bf0d58020f5e23f0299 patch 8.0.0743: the 'termsize' option can be set to an invalid value commit https://github.com/vim/vim/commit/825680f5f4ffed5d57fdb283dde5f0ad734605fc Author: Bram Moolenaar Date: Sat Jul 22 17:04:02 2017 +0200 patch 8.0.0743: the 'termsize' option can be set to an invalid value Problem: The 'termsize' option can be set to an invalid value. Solution: Check the 'termsize' option to be valid. diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -7479,6 +7479,19 @@ did_set_string_option( } #endif +#ifdef FEAT_TERMINAL + /* 'termsize' */ + else if (varp == &curwin->w_p_tms) + { + if (*curwin->w_p_tms != NUL) + { + p = skipdigits(curwin->w_p_tms); + if (p == curwin->w_p_tms || *p != 'x' || *skipdigits(p + 1) != NUL) + errmsg = e_invarg; + } + } +#endif + /* Options that are a list of flags. */ else { diff --git a/src/testdir/gen_opt_test.vim b/src/testdir/gen_opt_test.vim --- a/src/testdir/gen_opt_test.vim +++ b/src/testdir/gen_opt_test.vim @@ -124,6 +124,7 @@ let test_values = { \ 'switchbuf': [['', 'useopen', 'split,newtab'], ['xxx']], \ 'tagcase': [['smart', 'match'], ['', 'xxx', 'smart,match']], \ 'term': [[], []], + \ 'termsize': [['', '24x80', '0x80', '32x0', '0x0'], ['xxx', '80', '8ax9', '24x80b']], \ 'toolbar': [['', 'icons', 'text'], ['xxx']], \ 'toolbariconsize': [['', 'tiny', 'huge'], ['xxx']], \ 'ttymouse': [['', 'xterm'], ['xxx']], diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -770,6 +770,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 743, +/**/ 742, /**/ 741,