From 9ad0a08e78693417e97fe57d21e5f84234ac1694 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Kr=C3=BCger?= Date: Wed, 23 Jan 2013 09:51:55 +0100 Subject: [PATCH] Fixed potential ArgumentOutOfRangeException. --- .../Refactoring/VariableReferenceGraph.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs index 487ba584c0..97eb8532b1 100644 --- a/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs +++ b/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs @@ -85,6 +85,8 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring ISet refStatements, BaseRefactoringContext context) { var cfg = cfgBuilder.BuildControlFlowGraph (statement, context.Resolver, context.CancellationToken); + if (cfg.Count == 0) + return new VariableReferenceNode (); return cfgVrNodeBuilder.Build (cfg [0], references, refStatements, context.Resolver); } @@ -92,6 +94,8 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring ISet refStatements, CSharpAstResolver resolver, CancellationToken cancellationToken = default(CancellationToken)) { var cfg = cfgBuilder.BuildControlFlowGraph (statement, resolver, cancellationToken); + if (cfg.Count == 0) + return new VariableReferenceNode(); return cfgVrNodeBuilder.Build (cfg [0], references, refStatements, resolver); }