]> granicus.if.org Git - vim/commitdiff
And another small fix for persistent undo.
authorBram Moolenaar <Bram@vim.org>
Mon, 24 May 2010 20:06:04 +0000 (22:06 +0200)
committerBram Moolenaar <Bram@vim.org>
Mon, 24 May 2010 20:06:04 +0000 (22:06 +0200)
src/undo.c

index 35a907fa8e23898cd7f2a5050ffdd78ce28b2628..35fa31064208948d8a61fb35ba7130476a10ca08 100644 (file)
@@ -1025,10 +1025,10 @@ u_read_undo(name, hash)
             {
                 /* If we've had to move from the rightmost side of the table,
                  * we have to shift everything to the right by one spot. */
-                if (i < num_read_uhps - 1)
+                if (num_read_uhps - i - 1 > 0)
                 {
                     memmove(uhp_table + i + 2, uhp_table + i + 1,
-                            (num_read_uhps - i) * sizeof(u_header_T *));
+                            (num_read_uhps - i - 1) * sizeof(u_header_T *));
                 }
                 uhp_table[i + 1] = uhp;
                 break;