diff --git a/src/ops.c b/src/ops.c index 86408a4944..edc84a07aa 100644 --- a/src/ops.c +++ b/src/ops.c @@ -3831,6 +3831,9 @@ do_put(regname, dir, count, flags) lnum++; } while (VIsual_active && lnum <= curbuf->b_visual.vi_end.lnum); + if (VIsual_active) /* reset lnum to the last visual line */ + lnum--; + curbuf->b_op_end = curwin->w_cursor; /* For "CTRL-O p" in Insert mode, put cursor after last char */ if (totlen && (restart_edit != 0 || (flags & PUT_CURSEND))) diff --git a/src/version.c b/src/version.c index 20cafae107..758c686355 100644 --- a/src/version.c +++ b/src/version.c @@ -741,6 +741,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 521, /**/ 520, /**/