From: Milly Date: Tue, 22 Oct 2024 20:01:46 +0000 (+0200) Subject: patch 9.1.0800: tests: no error check when setting global 'termwinsize' X-Git-Tag: v9.1.0800^0 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8be10aa9e4f88d9cc3d0a556cb259635145a8575;p=thirdparty%2Fvim.git patch 9.1.0800: tests: no error check when setting global 'termwinsize' Problem: tests: no error check when setting global 'termwinsize' Solution: Also validate when using setglobal (Milly). closes: #15918 Signed-off-by: Milly Signed-off-by: Christian Brabandt --- diff --git a/src/optionstr.c b/src/optionstr.c index b1bb39a62c..ccba9765f6 100644 --- a/src/optionstr.c +++ b/src/optionstr.c @@ -3904,17 +3904,16 @@ did_set_termwinkey(optset_T *args UNUSED) * The 'termwinsize' option is changed. */ char * -did_set_termwinsize(optset_T *args UNUSED) +did_set_termwinsize(optset_T *args) { + char_u **varp = (char_u **)args->os_varp; char_u *p; - if (*curwin->w_p_tws == NUL) + if ((*varp)[0] == NUL) return NULL; - p = skipdigits(curwin->w_p_tws); - if (p == curwin->w_p_tws - || (*p != 'x' && *p != '*') - || *skipdigits(p + 1) != NUL) + p = skipdigits(*varp); + if (p == *varp || (*p != 'x' && *p != '*') || *skipdigits(p + 1) != NUL) return e_invalid_argument; return NULL; diff --git a/src/testdir/gen_opt_test.vim b/src/testdir/gen_opt_test.vim index e855602525..7b0064cfd9 100644 --- a/src/testdir/gen_opt_test.vim +++ b/src/testdir/gen_opt_test.vim @@ -57,7 +57,6 @@ let skip_setglobal_reasons = #{ \ sidescrolloff: 'TODO: fix missing error handling for setglobal', \ tabstop: 'TODO: fix missing error handling for setglobal', \ termwinkey: 'TODO: fix missing error handling for setglobal', - \ termwinsize: 'TODO: fix missing error handling for setglobal', \ textwidth: 'TODO: fix missing error handling for setglobal', \} diff --git a/src/version.c b/src/version.c index 7a0b0ad1db..404ebf5e82 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 800, /**/ 799, /**/