summaryrefslogtreecommitdiffstats
path: root/src/if_ruby.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-01-11 16:05:23 +0100
committerBram Moolenaar <Bram@vim.org>2020-01-11 16:05:23 +0100
commit9b4a15d5dba354d2e1e02871470bad103f34769a (patch)
treee5e49ad3182e07e641cdea0e04c4a8078186c58c /src/if_ruby.c
parente05a89ac6399a8c7d164c99fdab6841d999a9128 (diff)
patch 8.2.0111: VAR_SPECIAL is also used for booleansv8.2.0111
Problem: VAR_SPECIAL is also used for booleans. Solution: Add VAR_BOOL for better type checking.
Diffstat (limited to 'src/if_ruby.c')
-rw-r--r--src/if_ruby.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/if_ruby.c b/src/if_ruby.c
index 68d55821fc..7f2a7d265e 100644
--- a/src/if_ruby.c
+++ b/src/if_ruby.c
@@ -1183,7 +1183,7 @@ vim_to_ruby(typval_T *tv)
}
}
}
- else if (tv->v_type == VAR_SPECIAL)
+ else if (tv->v_type == VAR_BOOL || tv->v_type == VAR_SPECIAL)
{
if (tv->vval.v_number == VVAL_TRUE)
result = Qtrue;
@@ -1827,11 +1827,11 @@ ruby_convert_to_vim_value(VALUE val, typval_T *rettv)
rettv->vval.v_number = VVAL_NULL;
break;
case T_TRUE:
- rettv->v_type = VAR_SPECIAL;
+ rettv->v_type = VAR_BOOL;
rettv->vval.v_number = VVAL_TRUE;
break;
case T_FALSE:
- rettv->v_type = VAR_SPECIAL;
+ rettv->v_type = VAR_BOOL;
rettv->vval.v_number = VVAL_FALSE;
break;
case T_BIGNUM: