diff options
author | Mike Krüger <mkrueger@xamarin.com> | 2013-08-27 08:54:03 +0400 |
---|---|---|
committer | Mike Krüger <mkrueger@xamarin.com> | 2013-08-27 08:54:03 +0400 |
commit | 8439c211df23ee280dbe1d3bec235ea68a59f9ba (patch) | |
tree | 6601684e6bc8e40cecd6765c4784bea4dcf8b58e /main/src | |
parent | e4c4e1f92b5efa37643c789246d1c81424f5a56d (diff) |
Fixed 'Bug 14253 - NRE in Find References'.
Diffstat (limited to 'main/src')
-rw-r--r-- | main/src/addins/CSharpBinding/MonoDevelop.CSharp.Refactoring/CSharpReferenceFinder.cs | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Refactoring/CSharpReferenceFinder.cs b/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Refactoring/CSharpReferenceFinder.cs index 4fc70543c0..501e92a694 100644 --- a/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Refactoring/CSharpReferenceFinder.cs +++ b/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Refactoring/CSharpReferenceFinder.cs @@ -100,9 +100,8 @@ namespace MonoDevelop.CSharp.Refactoring MemberReference GetReference (Project project, ResolveResult result, AstNode node, SyntaxTree syntaxTree, string fileName, Mono.TextEditor.TextEditorData editor) { AstNode originalNode = node; - if (result == null) { + if (result == null) return null; - } object valid = null; if (result is MethodGroupResolveResult) { @@ -122,8 +121,6 @@ namespace MonoDevelop.CSharp.Refactoring valid = searchedMembers.FirstOrDefault (n => n is IVariable && ((IVariable)n).Region == ns.Region); } else if (result is TypeResolveResult) { valid = searchedMembers.FirstOrDefault (n => n is IType); - } else { - valid = searchedMembers.FirstOrDefault (); } if (node is ConstructorInitializer) return null; @@ -181,7 +178,8 @@ namespace MonoDevelop.CSharp.Refactoring var region = new DomRegion (fileName, node.StartLocation, node.EndLocation); var length = node is PrimitiveType ? keywordName.Length : node.EndLocation.Column - node.StartLocation.Column; -
+ if (valid == null) + valid = searchedMembers.FirstOrDefault (); var reference = new CSharpMemberReference (project, originalNode, syntaxTree, valid, region, editor.LocationToOffset (region.Begin), length); reference.ReferenceUsageType = GetUsage (originalNode); |