From 2b83e7b0b347d5b4b3bc1975ae86058149ec174a Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Thu, 18 Sep 2014 18:38:42 +0200 Subject: [PATCH 1/2] Handle DirectoryNotFoundException and other IOExceptions in AssemblyParserService.GetAssemblyModelSafe(). --- src/Main/SharpDevelop/Parser/AssemblyParserService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Main/SharpDevelop/Parser/AssemblyParserService.cs b/src/Main/SharpDevelop/Parser/AssemblyParserService.cs index 0c864e2e7f..1b2959abb5 100644 --- a/src/Main/SharpDevelop/Parser/AssemblyParserService.cs +++ b/src/Main/SharpDevelop/Parser/AssemblyParserService.cs @@ -391,7 +391,7 @@ namespace ICSharpCode.SharpDevelop.Parser return GetAssemblyModel(fileName, includeInternalMembers); } catch (BadImageFormatException) { SD.MessageService.ShowWarningFormatted("${res:ICSharpCode.SharpDevelop.Dom.AssemblyInvalid}", Path.GetFileName(fileName)); - } catch (FileNotFoundException) { + } catch (IOException) { SD.MessageService.ShowWarningFormatted("${res:ICSharpCode.SharpDevelop.Dom.AssemblyNotAccessible}", fileName); } From e64d17f4a66be9f849436385fd4bc513f3b053f4 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Thu, 18 Sep 2014 18:42:41 +0200 Subject: [PATCH 2/2] Fix IndexOutOfRangeException in AddOptionalParameterToInvocationAction --- .../CodeActions/AddOptionalParameterToInvocationAction.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp.Refactoring/CodeActions/AddOptionalParameterToInvocationAction.cs b/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp.Refactoring/CodeActions/AddOptionalParameterToInvocationAction.cs index 49157a040e..5c1ef53474 100644 --- a/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp.Refactoring/CodeActions/AddOptionalParameterToInvocationAction.cs +++ b/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp.Refactoring/CodeActions/AddOptionalParameterToInvocationAction.cs @@ -54,8 +54,10 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring bool[] parameterIsSpecified = new bool[method.Parameters.Count]; var argumentToParameterMap = resolveResult.GetArgumentToParameterMap(); if (argumentToParameterMap != null) { - foreach (int paramIndex in argumentToParameterMap) - parameterIsSpecified[paramIndex] = true; + foreach (int paramIndex in argumentToParameterMap) { + if (paramIndex >= 0) + parameterIsSpecified[paramIndex] = true; + } } else { for (int i = 0; i < Math.Min(resolveResult.Arguments.Count, parameterIsSpecified.Length); i++) { parameterIsSpecified[i] = true;