changeset 10102:b80ad55d62d8 v7.4.2322

commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Sep 4 14:34:28 2016 +0200 patch 7.4.2322 Problem: Access memory beyond the end of the line. (Dominique Pelle) Solution: Adjust the cursor column.
author Christian Brabandt <cb@256bit.org>
date Sun, 04 Sep 2016 14:45:06 +0200
parents c78b9de182b6
children b2c8f28c83df
files src/move.c src/testdir/test_normal.vim src/version.c
diffstat 3 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/move.c
+++ b/src/move.c
@@ -2479,6 +2479,7 @@ onepage(int dir, long count)
     foldAdjustCursor();
 #endif
     cursor_correct();
+    check_cursor_col();
     if (retval == OK)
 	beginline(BL_SOL | BL_FIX);
     curwin->w_valid &= ~(VALID_WCOL|VALID_WROW|VALID_VIRTCOL);
--- a/src/testdir/test_normal.vim
+++ b/src/testdir/test_normal.vim
@@ -398,6 +398,15 @@ func! Test_normal14_page()
   bw!
 endfu
 
+func! Test_normal14_page_eol()
+  10new
+  norm oxxxxxxx
+  exe "norm 2\<c-f>"
+  " check with valgrind that cursor is put back in column 1
+  exe "norm 2\<c-b>"
+  bw!
+endfunc
+
 func! Test_normal15_z_scroll_vert()
   " basic test for z commands that scroll the window
   call Setup_NewWindow()
--- a/src/version.c
+++ b/src/version.c
@@ -764,6 +764,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2322,
+/**/
     2321,
 /**/
     2320,