diff options
-rw-r--r-- | src/evalfunc.c | 19 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 9 insertions, 12 deletions
diff --git a/src/evalfunc.c b/src/evalfunc.c index a3441a0cc..6706fe17b 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -10136,20 +10136,15 @@ f_setpos(typval_T *argvars, typval_T *rettv) pos.col = 0; if (name[0] == '.' && name[1] == NUL) { - /* set cursor */ - if (fnum == curbuf->b_fnum) + /* set cursor; "fnum" is ignored */ + curwin->w_cursor = pos; + if (curswant >= 0) { - curwin->w_cursor = pos; - if (curswant >= 0) - { - curwin->w_curswant = curswant - 1; - curwin->w_set_curswant = FALSE; - } - check_cursor(); - rettv->vval.v_number = 0; + curwin->w_curswant = curswant - 1; + curwin->w_set_curswant = FALSE; } - else - EMSG(_(e_invarg)); + check_cursor(); + rettv->vval.v_number = 0; } else if (name[0] == '\'' && name[1] != NUL && name[2] == NUL) { diff --git a/src/version.c b/src/version.c index 4d73ae64c..58c9d2913 100644 --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 256, +/**/ 255, /**/ 254, |