Mercurial > vim
diff src/typval.c @ 32098:39f4126d2a0d v9.0.1380
patch 9.0.1380: CTRL-X on 2**64 subtracts two
Commit: https://github.com/vim/vim/commit/5fb78c3fa5c996c08a65431d698bd2c251eef5c7
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 4 20:47:39 2023 +0000
patch 9.0.1380: CTRL-X on 2**64 subtracts two
Problem: CTRL-X on 2**64 subtracts two. (James McCoy)
Solution: Correct computation for large number. (closes https://github.com/vim/vim/issues/12103)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 04 Mar 2023 22:00:03 +0100 |
parents | 0d27ddce621d |
children | ec0d5bd9083c |
line wrap: on
line diff
--- a/src/typval.c +++ b/src/typval.c @@ -217,7 +217,7 @@ tv_get_bool_or_number_chk(typval_T *varp } if (varp->vval.v_string != NULL) vim_str2nr(varp->vval.v_string, NULL, NULL, - STR2NR_ALL, &n, NULL, 0, FALSE); + STR2NR_ALL, &n, NULL, 0, FALSE, NULL); return n; case VAR_LIST: emsg(_(e_using_list_as_number)); @@ -2230,7 +2230,7 @@ eval_number( // decimal, hex or octal number vim_str2nr(*arg, NULL, &len, skip_quotes ? STR2NR_NO_OCT + STR2NR_QUOTE - : STR2NR_ALL, &n, NULL, 0, TRUE); + : STR2NR_ALL, &n, NULL, 0, TRUE, NULL); if (len == 0) { if (evaluate)