aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/vars.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-10-13 08:09:53 +0800
committerGitHub <noreply@github.com>2024-10-13 08:09:53 +0800
commitb56aa80a264f64776bccd8757909cf7f220e6cb8 (patch)
tree2595cb718e551d17d312eddc356d2c2bdc2cdfb5 /src/nvim/eval/vars.c
parent06625f9b3af22a2971cbd21274138c9653f2f723 (diff)
downloadrneovim-b56aa80a264f64776bccd8757909cf7f220e6cb8.tar.gz
rneovim-b56aa80a264f64776bccd8757909cf7f220e6cb8.tar.bz2
rneovim-b56aa80a264f64776bccd8757909cf7f220e6cb8.zip
vim-patch:9.1.0775: tests: not enough tests for setting options (#30785)
Problem: tests: not enough tests for setting options Solution: Add more comprehensive tests to test_options (Milly). closes: vim/vim#15856 https://github.com/vim/vim/commit/484facebe4a0fb775ad011a99ba007f55fc4f11a Restore behavior of &l:option for unset local boolean options that was accidentally changed in #26429. Co-authored-by: Milly <milly.ca@gmail.com>
Diffstat (limited to 'src/nvim/eval/vars.c')
-rw-r--r--src/nvim/eval/vars.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/nvim/eval/vars.c b/src/nvim/eval/vars.c
index a33636667e..d002bff321 100644
--- a/src/nvim/eval/vars.c
+++ b/src/nvim/eval/vars.c
@@ -1965,14 +1965,12 @@ typval_T optval_as_tv(OptVal value, bool numbool)
case kOptValTypeNil:
break;
case kOptValTypeBoolean:
- if (value.data.boolean != kNone) {
- if (numbool) {
- rettv.v_type = VAR_NUMBER;
- rettv.vval.v_number = value.data.boolean == kTrue;
- } else {
- rettv.v_type = VAR_BOOL;
- rettv.vval.v_bool = value.data.boolean == kTrue;
- }
+ if (numbool) {
+ rettv.v_type = VAR_NUMBER;
+ rettv.vval.v_number = value.data.boolean;
+ } else if (value.data.boolean != kNone) {
+ rettv.v_type = VAR_BOOL;
+ rettv.vval.v_bool = value.data.boolean == kTrue;
}
break; // return v:null for None boolean value.
case kOptValTypeNumber: