From: Bram Moolenaar Date: Tue, 3 Nov 2009 15:44:21 +0000 (+0000) Subject: updated for version 7.2-279 X-Git-Tag: v7.2.279 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a1381de5f372f404180d896389dae1aaec02875d;p=vim updated for version 7.2-279 --- diff --git a/src/misc2.c b/src/misc2.c index 05379931c..5fc64bb8f 100644 --- a/src/misc2.c +++ b/src/misc2.c @@ -156,7 +156,7 @@ coladvance2(pos, addspaces, finetune, wcol) || ((ve_flags & VE_ONEMORE) && wcol < MAXCOL) #endif ; - line = ml_get_curline(); + line = ml_get_buf(curbuf, pos->lnum, FALSE); if (wcol >= MAXCOL) { @@ -332,9 +332,9 @@ coladvance2(pos, addspaces, finetune, wcol) #endif #ifdef FEAT_MBYTE - /* prevent cursor from moving on the trail byte */ + /* prevent from moving onto a trail byte */ if (has_mbyte) - mb_adjust_cursor(); + mb_adjustpos(pos); #endif if (col < wcol) diff --git a/src/ops.c b/src/ops.c index b21f4c250..e5db31347 100644 --- a/src/ops.c +++ b/src/ops.c @@ -2020,6 +2020,7 @@ op_replace(oap, c) bd.is_MAX = (curwin->w_curswant == MAXCOL); for ( ; curwin->w_cursor.lnum <= oap->end.lnum; ++curwin->w_cursor.lnum) { + curwin->w_cursor.col = 0; /* make sure cursor position is valid */ block_prep(oap, &bd, curwin->w_cursor.lnum, TRUE); if (bd.textlen == 0 && (!virtual_op || bd.is_MAX)) continue; /* nothing to replace */ @@ -2035,6 +2036,7 @@ op_replace(oap, c) { pos_T vpos; + vpos.lnum = curwin->w_cursor.lnum; getvpos(&vpos, oap->start_vcol); bd.startspaces += vpos.coladd; n = bd.startspaces; @@ -2693,11 +2695,8 @@ op_change(oap) * initial coladd offset as part of "startspaces" */ if (bd.is_short) { - linenr_T lnum = curwin->w_cursor.lnum; - - curwin->w_cursor.lnum = linenr; + vpos.lnum = linenr; (void)getvpos(&vpos, oap->start_vcol); - curwin->w_cursor.lnum = lnum; } else vpos.coladd = 0; diff --git a/src/version.c b/src/version.c index 9edf072d2..80bdb240b 100644 --- a/src/version.c +++ b/src/version.c @@ -676,6 +676,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 279, /**/ 278, /**/