diff options
author | Billy Su <g4691821@gmail.com> | 2020-04-28 23:21:50 +0800 |
---|---|---|
committer | Billy Su <g4691821@gmail.com> | 2020-06-06 23:24:58 +0800 |
commit | 1805fb469a39d998f9bef0415999aa835d051044 (patch) | |
tree | e840cff3201d735955eab935a35d3437f497607f /src/nvim/eval/typval_encode.c.h | |
parent | dbc8ec94464049311e69274cad562585d7bb6749 (diff) | |
download | rneovim-1805fb469a39d998f9bef0415999aa835d051044.tar.gz rneovim-1805fb469a39d998f9bef0415999aa835d051044.tar.bz2 rneovim-1805fb469a39d998f9bef0415999aa835d051044.zip |
vim-patch:8.2.0111: VAR_SPECIAL is also used for booleans
Problem: VAR_SPECIAL is also used for booleans.
Solution: Add VAR_BOOL for better type checking.
https://github.com/vim/vim/commit/9b4a15d5dba354d2e1e02871470bad103f34769a
Diffstat (limited to 'src/nvim/eval/typval_encode.c.h')
-rw-r--r-- | src/nvim/eval/typval_encode.c.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/nvim/eval/typval_encode.c.h b/src/nvim/eval/typval_encode.c.h index 94986a64b5..0aa64b1d5f 100644 --- a/src/nvim/eval/typval_encode.c.h +++ b/src/nvim/eval/typval_encode.c.h @@ -379,17 +379,22 @@ static int _TYPVAL_ENCODE_CONVERT_ONE_VALUE( TYPVAL_ENCODE_CONV_REAL_LIST_AFTER_START(tv, _mp_last(*mpstack)); break; } + case VAR_BOOL: { + switch (tv->vval.v_bool) { + case kBoolVarTrue: + case kBoolVarFalse: { + TYPVAL_ENCODE_CONV_BOOL(tv, tv->vval.v_bool == kBoolVarTrue); + break; + } + } + break; + } case VAR_SPECIAL: { switch (tv->vval.v_special) { case kSpecialVarNull: { TYPVAL_ENCODE_CONV_NIL(tv); // -V1037 break; } - case kSpecialVarTrue: - case kSpecialVarFalse: { - TYPVAL_ENCODE_CONV_BOOL(tv, tv->vval.v_special == kSpecialVarTrue); - break; - } } break; } |