patch 7.4.1574
Problem: ":undo 0" does not work. (Florent Fayolle)
Solution: Make it undo all the way. (closes #688)
diff --git a/src/testdir/test_alot.vim b/src/testdir/test_alot.vim
index 94ff8b1..bd74afc 100644
--- a/src/testdir/test_alot.vim
+++ b/src/testdir/test_alot.vim
@@ -4,6 +4,7 @@
source test_assign.vim
source test_cursor_func.vim
source test_delete.vim
+source test_ex_undo.vim
source test_expand.vim
source test_feedkeys.vim
source test_file_perm.vim
diff --git a/src/testdir/test_undolevels.vim b/src/testdir/test_undolevels.vim
index 427cece..7bb25ef 100644
--- a/src/testdir/test_undolevels.vim
+++ b/src/testdir/test_undolevels.vim
@@ -1,7 +1,5 @@
" Tests for 'undolevels'
-set nocompatible viminfo+=nviminfo
-
func FillBuffer()
for i in range(1,13)
put=i
diff --git a/src/undo.c b/src/undo.c
index 2bf815b..07b2781 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -2286,7 +2286,14 @@
* Init "closest" to a value we can't reach. */
if (absolute)
{
- target = step;
+ if (step == 0)
+ {
+ /* target 0 does not exist, got to 1 and above it. */
+ target = 1;
+ above = TRUE;
+ }
+ else
+ target = step;
closest = -1;
}
else
diff --git a/src/version.c b/src/version.c
index c3c9323..4779f7d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -744,6 +744,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1574,
+/**/
1573,
/**/
1572,