diff --git a/src/Features/Core/Portable/InvertIf/AbstractInvertIfCodeRefactoringProvider.cs b/src/Features/Core/Portable/InvertIf/AbstractInvertIfCodeRefactoringProvider.cs index 4b177598834b7aa201e0260f8b78e0c7d98b1742..1d8a84a5056abb753c63640b9d2f1182b8702e04 100644 --- a/src/Features/Core/Portable/InvertIf/AbstractInvertIfCodeRefactoringProvider.cs +++ b/src/Features/Core/Portable/InvertIf/AbstractInvertIfCodeRefactoringProvider.cs @@ -353,16 +353,14 @@ private bool IsEmptyStatementRange(StatementRange statementRange) private ImmutableArray GetSubsequentStatementRanges(TIfStatementSyntax ifNode) { - var builder = ArrayBuilder.GetInstance(); + using var _ = ArrayBuilder.GetInstance(out var builder); TStatementSyntax innerStatement = ifNode; foreach (var node in ifNode.Ancestors()) { var nextStatement = GetNextStatement(innerStatement); if (nextStatement != null && IsStatementContainer(node)) - { builder.Add(new StatementRange(nextStatement, GetStatements(node).Last())); - } if (!CanControlFlowOut(node)) { @@ -372,12 +370,10 @@ private ImmutableArray GetSubsequentStatementRanges(TIfStatement } if (IsExecutableStatement(node)) - { innerStatement = (TStatementSyntax)node; - } } - return builder.ToImmutableAndFree(); + return builder.ToImmutable(); } protected abstract string GetTitle();