# HG changeset patch # User Bram Moolenaar # Date 1331922266 -3600 # Node ID 7f1bce9c9b79d4ebbf798d6122612934d55d70d9 # Parent 7494fd72b91bb4fa9403d5ce3a08f34e01ae24c1 updated for version 7.3.473 Problem: 'cursorbind' does not work correctly in combination with 'virtualedit' set to "all". Solution: Copy coladd. (Gary Johnson) diff --git a/src/move.c b/src/move.c --- a/src/move.c +++ b/src/move.c @@ -2843,7 +2843,10 @@ halfpage(flag, Prenum) do_check_cursorbind() { linenr_T line = curwin->w_cursor.lnum; - colnr_T col = curwin->w_cursor.col; + colnr_T col = curwin->w_cursor.col; +# ifdef FEAT_VIRTUALEDIT + colnr_T coladd = curwin->w_cursor.coladd; +# endif win_T *old_curwin = curwin; buf_T *old_curbuf = curbuf; int restart_edit_save; @@ -2875,6 +2878,9 @@ do_check_cursorbind() # endif curwin->w_cursor.lnum = line; curwin->w_cursor.col = col; +# ifdef FEAT_VIRTUALEDIT + curwin->w_cursor.coladd = coladd; +# endif /* Make sure the cursor is in a valid position. Temporarily set * "restart_edit" to allow the cursor to be beyond the EOL. */ diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -715,6 +715,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 473, +/**/ 472, /**/ 471,