diff --git a/src/ops.c b/src/ops.c index 4ad982f7f6..fa159e983c 100644 --- a/src/ops.c +++ b/src/ops.c @@ -410,7 +410,15 @@ shift_block(oparg_T *oap, int amount) { #ifdef FEAT_MBYTE if (has_mbyte) - bd.textstart += (*mb_ptr2len)(bd.textstart); + { + if ((*mb_ptr2len)(bd.textstart) == 1) + ++bd.textstart; + else + { + ws_vcol = 0; + bd.startspaces = 0; + } + } else #endif ++bd.textstart; diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak index 854f95bcc1..854220f0e0 100644 --- a/src/testdir/Make_all.mak +++ b/src/testdir/Make_all.mak @@ -184,6 +184,7 @@ NEW_TESTS = test_arglist.res \ test_syntax.res \ test_viminfo.res \ test_viml.res \ + test_visual.res \ test_alot.res diff --git a/src/version.c b/src/version.c index af39e7e958..bc1b812036 100644 --- a/src/version.c +++ b/src/version.c @@ -743,6 +743,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1491, /**/ 1490, /**/