diff src/normal.c @ 2139:35effbd07a25 v7.2.421

updated for version 7.2.421 Problem: Folds are sometimes not updated properly and there is no way to force an update. Solution: Make "zx" and "zX" recompute folds (suggested by Christian Brabandt)
author Bram Moolenaar <bram@zimbu.org>
date Thu, 13 May 2010 17:35:59 +0200
parents 279380a812ad
children c6f1aa1e9f32
line wrap: on
line diff
--- a/src/normal.c
+++ b/src/normal.c
@@ -4936,13 +4936,15 @@ dozet:
 
 		/* "zx": re-apply 'foldlevel' and open folds at the cursor */
     case 'x':	curwin->w_p_fen = TRUE;
-		newFoldLevel();		/* update right now */
+		curwin->w_foldinvalid = TRUE;	/* recompute folds */
+		newFoldLevel();			/* update right now */
 		foldOpenCursor();
 		break;
 
 		/* "zX": undo manual opens/closes, re-apply 'foldlevel' */
     case 'X':	curwin->w_p_fen = TRUE;
-		old_fdl = -1;		/* force an update */
+		curwin->w_foldinvalid = TRUE;	/* recompute folds */
+		old_fdl = -1;			/* force an update */
 		break;
 
 		/* "zm": fold more */