patch 7.4.1939
Problem: Memory access error when reading viminfo. (Dominique Pelle)
Solution: Correct index in jumplist when at the end.
diff --git a/src/testdir/test_viminfo.vim b/src/testdir/test_viminfo.vim
index 64a7e6f..76b2440 100644
--- a/src/testdir/test_viminfo.vim
+++ b/src/testdir/test_viminfo.vim
@@ -322,6 +322,7 @@
clearjumps
rviminfo Xviminfo
+ let last_line = line('.')
exe "normal \<C-O>"
call assert_equal('time 30', getline('.'))
exe "normal \<C-O>"
@@ -336,6 +337,20 @@
exe "normal \<C-O>"
call assert_equal('time 05', getline('.'))
+ " Test with jumplist full.
+ clearjumps
+ call setline(1, repeat(['match here'], 101))
+ call cursor(1, 1)
+ call test_settime(10)
+ for i in range(100)
+ exe "normal /here\r"
+ endfor
+ rviminfo Xviminfo
+
+ " must be newest mark that comes from viminfo.
+ exe "normal \<C-O>"
+ call assert_equal(last_line, line('.'))
+
bwipe!
call delete('Xviminfo')
endfunc