Original
 1 public void expandFolds(int foldLevel, boolean update)
 2 {
 3   if(buffer.getFoldHandler() instanceof IndentFoldHandler)
 4     foldLevel = (foldLevel - 1) * buffer.getIndentSize() + 1;
 5 
   
   
 6   showLineRange(0,buffer.getLineCount() - 1);
 7 
 8   int leastFolded = -1;
 9   int firstInvisible = 0;
10 
11   for(int i = 0; i < buffer.getLineCount(); i++)
12   {
   
13     if (leastFolded == -1 || buffer.getFoldLevel(i) < leastFolded)
14     {
15       leastFolded = buffer.getFoldLevel(i);
16     }
17   
18     if (buffer.getFoldLevel(i) < foldLevel ||
19         buffer.getFoldLevel(i) == leastFolded)
20     {
21       if(firstInvisible != i)
22       {
23         hideLineRange(firstInvisible,
24           i - 1);
25       }
26       firstInvisible = i + 1;
27     }
28   }
29 
30   if(firstInvisible != buffer.getLineCount())
31     hideLineRange(firstInvisible,buffer.getLineCount() - 1);
32 
33   notifyScreenLineChanges();
34   if(update && textArea.getDisplayManager() == this)
35   {
36     textArea.foldStructureChanged();
37   }
38 }
39 
Modified
 1 public void expandFolds(int foldLevel, boolean update)
 2 {
 3   if(buffer.getFoldHandler() instanceof IndentFoldHandler)
 4     foldLevel = (foldLevel - 1) * buffer.getIndentSize() + 1;
 5 
 6   int lineCount = buffer.getLineCount();
 7   int end = lineCount - 1;
 8   showLineRange(0,end);
 9 
10   int leastFolded = -1;
11   int firstInvisible = 0;
12 
13   for(int i = 0; i < lineCount; i++)
14   {
15     int level = buffer.getFoldLevel(i);
16     if (leastFolded == -1 || level < leastFolded)
17     {
18       leastFolded = level;
19     }
20   
21     if (level < foldLevel ||
21  level == leastFolded)
22     {
23       if(firstInvisible != i)
24       {
25         hideLineRange(firstInvisible,
26           i - 1);
27       }
28       firstInvisible = i + 1;
29     }
30   }
31 
32   if(firstInvisible != lineCount)
33     hideLineRange(firstInvisible,end);
34 
35   notifyScreenLineChanges();
36   if(update && textArea.getDisplayManager() == this)
37   {
38     textArea.foldStructureChanged();
39   }
40 }
41