patch 7.4.700
Problem:    Fold can't be opened after ":move". (Ein Brown)
Solution:   Delete the folding information and update it afterwards.
            (Christian Brabandt)
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 978d516..1abda74 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -741,6 +741,16 @@
     linenr_T	extra;	    /* Num lines added before line1 */
     linenr_T	num_lines;  /* Num lines moved */
     linenr_T	last_line;  /* Last line in file after adding new text */
+#ifdef FEAT_FOLDING
+    int		isFolded;
+
+    /* Moving lines seems to corrupt the folds, delete folding info now
+     * and recreate it when finished.  Don't do this for manual folding, it
+     * would delete all folds. */
+    isFolded = hasAnyFolding(curwin) && !foldmethodIsManual(curwin);
+    if (isFolded)
+	deleteFoldRecurse(&curwin->w_folds);
+#endif
 
     if (dest >= line1 && dest < line2)
     {
@@ -839,6 +849,12 @@
     else
 	changed_lines(dest + 1, 0, line1 + num_lines, 0L);
 
+#ifdef FEAT_FOLDING
+	/* recreate folds */
+	if (isFolded)
+	    foldUpdateAll(curwin);
+#endif
+
     return OK;
 }
 
diff --git a/src/fold.c b/src/fold.c
index 671bbf7..21e455b 100644
--- a/src/fold.c
+++ b/src/fold.c
@@ -847,8 +847,8 @@
     fold_T	*fp;
 
     /* Mark all folds from top to bot as maybe-small. */
-    (void)foldFind(&curwin->w_folds, top, &fp);
-    while (fp < (fold_T *)curwin->w_folds.ga_data + curwin->w_folds.ga_len
+    (void)foldFind(&wp->w_folds, top, &fp);
+    while (fp < (fold_T *)wp->w_folds.ga_data + wp->w_folds.ga_len
 	    && fp->fd_top < bot)
     {
 	fp->fd_small = MAYBE;
diff --git a/src/testdir/test45.in b/src/testdir/test45.in
index e5af507..b1e8266 100644
--- a/src/testdir/test45.in
+++ b/src/testdir/test45.in
@@ -63,6 +63,16 @@
 :call append("$", foldlevel("."))
 :/^last/+1,$w! test.out
 :delfun Flvl
+:new
+iTest fdm=indent and :move bug END
+line2
+	Test fdm=indent START
+	line3
+	line4
+:set fdm=indent
+:1m1
+2jzc:m0
+:%w >> test.out
 :qa!
 ENDTEST
 
diff --git a/src/testdir/test45.ok b/src/testdir/test45.ok
index f04996e..0f25e62 100644
--- a/src/testdir/test45.ok
+++ b/src/testdir/test45.ok
@@ -16,3 +16,8 @@
 1
 2
 0
+	Test fdm=indent START
+	line3
+	line4
+Test fdm=indent and :move bug END
+line2
diff --git a/src/version.c b/src/version.c
index 9d1eb79..c03b9a4 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    700,
+/**/
     699,
 /**/
     698,