Browse Source

Merge pull request #1972 from yyjdelete/patch1971

Fix #1971
pull/1974/head
Siegfried Pammer 5 years ago committed by GitHub
parent
commit
7448214760
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      ILSpy/TextView/DecompilerTextView.cs

4
ILSpy/TextView/DecompilerTextView.cs

@ -1086,12 +1086,12 @@ namespace ICSharpCode.ILSpy.TextView
public void SaveFoldingsState(IEnumerable<FoldingSection> foldings) public void SaveFoldingsState(IEnumerable<FoldingSection> foldings)
{ {
ExpandedFoldings = foldings.Where(f => !f.IsFolded).Select(f => Tuple.Create(f.StartOffset, f.EndOffset)).ToList(); ExpandedFoldings = foldings.Where(f => !f.IsFolded).Select(f => Tuple.Create(f.StartOffset, f.EndOffset)).ToList();
FoldingsChecksum = unchecked(foldings.Select(f => f.StartOffset * 3 - f.EndOffset).Aggregate((a, b) => a + b)); FoldingsChecksum = unchecked(foldings.Select(f => f.StartOffset * 3 - f.EndOffset).DefaultIfEmpty().Aggregate((a, b) => a + b));
} }
internal void RestoreFoldings(List<NewFolding> list) internal void RestoreFoldings(List<NewFolding> list)
{ {
var checksum = unchecked(list.Select(f => f.StartOffset * 3 - f.EndOffset).Aggregate((a, b) => a + b)); var checksum = unchecked(list.Select(f => f.StartOffset * 3 - f.EndOffset).DefaultIfEmpty().Aggregate((a, b) => a + b));
if (FoldingsChecksum == checksum) if (FoldingsChecksum == checksum)
foreach (var folding in list) foreach (var folding in list)
folding.DefaultClosed = !ExpandedFoldings.Any(f => f.Item1 == folding.StartOffset && f.Item2 == folding.EndOffset); folding.DefaultClosed = !ExpandedFoldings.Any(f => f.Item1 == folding.StartOffset && f.Item2 == folding.EndOffset);

Loading…
Cancel
Save