Mercurial > vim
comparison src/getchar.c @ 22107:679269735ec3 v8.2.1603
patch 8.2.1603: Vim9: cannot use "true" with getchar()
Commit: https://github.com/vim/vim/commit/c08cc72947fdfab484f53c5d9bbea662bc5a9c8f
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Sep 5 17:51:23 2020 +0200
patch 8.2.1603: Vim9: cannot use "true" with getchar()
Problem: Vim9: cannot use "true" with getchar().
Solution: use tv_get_bool_chk(). (closes https://github.com/vim/vim/issues/6874)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 05 Sep 2020 18:00:04 +0200 |
parents | bb0c4325a712 |
children | 3ea773da9c4f |
comparison
equal
deleted
inserted
replaced
22106:fbcfa658f056 | 22107:679269735ec3 |
---|---|
2035 for (;;) | 2035 for (;;) |
2036 { | 2036 { |
2037 if (argvars[0].v_type == VAR_UNKNOWN) | 2037 if (argvars[0].v_type == VAR_UNKNOWN) |
2038 // getchar(): blocking wait. | 2038 // getchar(): blocking wait. |
2039 n = plain_vgetc(); | 2039 n = plain_vgetc(); |
2040 else if (tv_get_number_chk(&argvars[0], &error) == 1) | 2040 else if (tv_get_bool_chk(&argvars[0], &error)) |
2041 // getchar(1): only check if char avail | 2041 // getchar(1): only check if char avail |
2042 n = vpeekc_any(); | 2042 n = vpeekc_any(); |
2043 else if (error || vpeekc_any() == NUL) | 2043 else if (error || vpeekc_any() == NUL) |
2044 // illegal argument or getchar(0) and no char avail: return zero | 2044 // illegal argument or getchar(0) and no char avail: return zero |
2045 n = 0; | 2045 n = 0; |