vim-patch:9.0.2022: getmousepos() returns wrong index for TAB char (#25636)

Problem:  When clicking in the middle of a TAB, getmousepos() returns
          the column of the next char instead of the TAB.
Solution: Break out of the loop when the vcol to find is inside current
          char. Fix invalid memory access when calling virtcol2col() on
          an empty line.

closes: vim/vim#13321

b583eda703
This commit is contained in:
zeertzjq
2023-10-14 19:18:25 +08:00
committed by GitHub
parent 99b1163b5a
commit bcda800933
7 changed files with 65 additions and 6 deletions

View File

@@ -12107,6 +12107,8 @@ M.funcs = {
character in window {winid} at buffer line {lnum} and virtual
column {col}.
If buffer line {lnum} is an empty line, 0 is returned.
If {col} is greater than the last virtual column in line
{lnum}, then the byte index of the character at the last
virtual column is returned.