diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-02-13 05:26:15 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-13 05:26:15 +0800 |
commit | 90a43e846d96255b35338e95b5841f913ce2c657 (patch) | |
tree | 9429ff3ad73fe0f44d349a089167b3ff80d40e32 /src/nvim/eval/funcs.c | |
parent | f89f4b1e12d97a78a86efbe80b23bf60f4d07d73 (diff) | |
parent | ed169d89979caf8e67dbdf74491367d2e0cfad58 (diff) | |
download | rneovim-90a43e846d96255b35338e95b5841f913ce2c657.tar.gz rneovim-90a43e846d96255b35338e95b5841f913ce2c657.tar.bz2 rneovim-90a43e846d96255b35338e95b5841f913ce2c657.zip |
Merge pull request #17382 from zeertzjq/vim-8.2.2342
vim-patch:8.2.2342: "char" functions may return wrong column in Insert mode
Diffstat (limited to 'src/nvim/eval/funcs.c')
-rw-r--r-- | src/nvim/eval/funcs.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index 8beacc9988..7772d9ffc2 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -1588,7 +1588,7 @@ static void set_cursorpos(typval_T *argvars, typval_T *rettv, bool charcol) line = tv_get_lnum(argvars); col = (long)tv_get_number_chk(&argvars[1], NULL); if (charcol) { - col = buf_charidx_to_byteidx(curbuf, line, col); + col = buf_charidx_to_byteidx(curbuf, line, col) + 1; } if (argvars[2].v_type != VAR_UNKNOWN) { coladd = (long)tv_get_number_chk(&argvars[2], NULL); @@ -3327,7 +3327,7 @@ static void getpos_both(typval_T *argvars, typval_T *rettv, bool getcurpos, bool } if (fp != NULL && charcol) { pos = *fp; - pos.col = buf_byteidx_to_charidx(wp->w_buffer, pos.lnum, pos.col) - 1; + pos.col = buf_byteidx_to_charidx(wp->w_buffer, pos.lnum, pos.col); fp = &pos; } } else { |