diff options
| author | James McCoy <jamessan@jamessan.com> | 2017-02-27 12:06:27 -0500 | 
|---|---|---|
| committer | James McCoy <jamessan@jamessan.com> | 2017-02-27 15:00:18 -0500 | 
| commit | 2f5aee561e94703f09b8cb85dfd5a42b06153992 (patch) | |
| tree | d48d0775e3c73fdec5edbcaf81508fd51f66c702 /src/nvim/eval.c | |
| parent | eb6651b7a936736be4b9572f7cfec1ac2f8aa07a (diff) | |
| download | rneovim-2f5aee561e94703f09b8cb85dfd5a42b06153992.tar.gz rneovim-2f5aee561e94703f09b8cb85dfd5a42b06153992.tar.bz2 rneovim-2f5aee561e94703f09b8cb85dfd5a42b06153992.zip | |
vim-patch:7.4.1992
Problem:    Values for true and false can be confusing.
Solution:   Update the documentation.  Add a test.  Make v:true evaluate to
            TRUE for a non-zero-arg.
https://github.com/vim/vim/commit/e381d3d5e098546854b008e01ca1d28ba1a4a057
Diffstat (limited to 'src/nvim/eval.c')
| -rw-r--r-- | src/nvim/eval.c | 12 | 
1 files changed, 7 insertions, 5 deletions
| diff --git a/src/nvim/eval.c b/src/nvim/eval.c index 942a82a040..ab8f75d318 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -7715,11 +7715,13 @@ static void emsg_funcname(char *ermsg, char_u *name)   */  static int non_zero_arg(typval_T *argvars)  { -  return (argvars[0].v_type == VAR_NUMBER -          && argvars[0].vval.v_number != 0) -         || (argvars[0].v_type == VAR_STRING -             && argvars[0].vval.v_string != NULL -             && *argvars[0].vval.v_string != NUL); +  return ((argvars[0].v_type == VAR_NUMBER +           && argvars[0].vval.v_number != 0) +          || (argvars[0].v_type == VAR_SPECIAL +              && argvars[0].vval.v_special == kSpecialVarTrue) +          || (argvars[0].v_type == VAR_STRING +              && argvars[0].vval.v_string != NULL +              && *argvars[0].vval.v_string != NUL));  }  /********************************************* | 
