0
0
mirror of https://github.com/vim/vim.git synced 2025-10-02 05:04:20 -04:00

patch 7.4.1979

Problem:    Getting value of binary option is wrong. (Kent Sibilev)
Solution:   Fix type cast.  Add a test.
This commit is contained in:
Bram Moolenaar
2016-07-01 23:14:02 +02:00
parent c5af40ae64
commit 2acfbed9db
3 changed files with 26 additions and 1 deletions

View File

@@ -9102,7 +9102,7 @@ get_option_value(
if ((int *)varp == &curbuf->b_changed)
*numval = curbufIsChanged();
else
*numval = (long) *(varnumber_T *)varp;
*numval = (long) *(int *)varp;
}
return 1;
}

View File

@@ -106,3 +106,26 @@ func Test_special_char()
" The failure is only visible using valgrind.
call assert_fails('echo "\<C-">')
endfunc
func Test_option_value()
" boolean
set bri
call assert_equal(1, &bri)
set nobri
call assert_equal(0, &bri)
" number
set ts=1
call assert_equal(1, &ts)
set ts=8
call assert_equal(8, &ts)
" string
exe "set cedit=\<Esc>"
call assert_equal("\<Esc>", &cedit)
set cpo=
call assert_equal("", &cpo)
set cpo=abcdefgi
call assert_equal("abcdefgi", &cpo)
set cpo&vim
endfunc

View File

@@ -758,6 +758,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1979,
/**/
1978,
/**/