aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
diff options
context:
space:
mode:
authoroni-link <knil.ino@gmail.com>2015-03-04 17:57:47 +0100
committeroni-link <knil.ino@gmail.com>2015-03-04 18:25:52 +0100
commit0dd1ad0760ecdbfeef94da4ef33d71e66eab35b3 (patch)
treee02830ebba6999631940c6a61c85f51cf7266942 /src/nvim/eval.c
parenta4c3ac2799281b56c1c38d0fdc584e22ac1b3d2f (diff)
downloadrneovim-0dd1ad0760ecdbfeef94da4ef33d71e66eab35b3.tar.gz
rneovim-0dd1ad0760ecdbfeef94da4ef33d71e66eab35b3.tar.bz2
rneovim-0dd1ad0760ecdbfeef94da4ef33d71e66eab35b3.zip
vim-patch:7.4.578
Problem: Using getcurpos() after "$" in an empty line returns a negative number. Solution: Don't add one when this would overflow. (Hirohito Higashi) https://code.google.com/p/vim/source/detail?r=v7-4-578
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r--src/nvim/eval.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 87bd058c9e..9b4b4ce496 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -9479,7 +9479,9 @@ static void getpos_both(typval_T *argvars, typval_T *rettv, bool getcurpos)
list_append_number(l,
(fp != NULL) ? (varnumber_T)fp->coladd : (varnumber_T)0);
if (getcurpos) {
- list_append_number(l, (varnumber_T) curwin->w_curswant + 1);
+ list_append_number(l, curwin->w_curswant == MAXCOL
+ ? (varnumber_T)MAXCOL
+ : (varnumber_T)curwin->w_curswant + 1);
}
}