updated for version 7.0210
diff --git a/src/undo.c b/src/undo.c
index 1ead156..0c7cbd7 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -845,6 +845,28 @@
}
/*
+ * ":undojoin": continue adding to the last entry list
+ */
+/*ARGSUSED*/
+ void
+ex_undojoin(eap)
+ exarg_T *eap;
+{
+ if (!curbuf->b_u_synced)
+ return; /* already unsynced */
+ if (curbuf->b_u_newhead == NULL)
+ return; /* nothing changed before */
+ if (p_ul < 0)
+ return; /* no entries, nothing to do */
+ else
+ {
+ /* Go back to the last entry */
+ curbuf->b_u_curhead = curbuf->b_u_newhead;
+ curbuf->b_u_synced = FALSE; /* no entries, nothing to do */
+ }
+}
+
+/*
* Called after writing the file and setting b_changed to FALSE.
* Now an undo means that the buffer is modified.
*/