diff --git a/src/Main/Base/Project/Src/Dom/Implementations/GetClassReturnType.cs b/src/Main/Base/Project/Src/Dom/Implementations/GetClassReturnType.cs index 57702fc2fc..25f5b41b2e 100644 --- a/src/Main/Base/Project/Src/Dom/Implementations/GetClassReturnType.cs +++ b/src/Main/Base/Project/Src/Dom/Implementations/GetClassReturnType.cs @@ -94,7 +94,10 @@ namespace ICSharpCode.SharpDevelop.Dom get { string tmp = base.Namespace; if (tmp == "?") { - return fullName.Substring(0, fullName.LastIndexOf('.')); + if (fullName.IndexOf('.') > 0) + return fullName.Substring(0, fullName.LastIndexOf('.')); + else + return ""; } return tmp; } diff --git a/src/Main/Base/Project/Src/Services/ParserService/ProjectContentRegistry.cs b/src/Main/Base/Project/Src/Services/ParserService/ProjectContentRegistry.cs index 697bd777b9..b18cfac6d8 100644 --- a/src/Main/Base/Project/Src/Services/ParserService/ProjectContentRegistry.cs +++ b/src/Main/Base/Project/Src/Services/ParserService/ProjectContentRegistry.cs @@ -177,6 +177,10 @@ namespace ICSharpCode.Core contents[pc.AssemblyFullName] = pc; } return pc; + } catch (Exception ex) { + WorkbenchSingleton.SafeThreadAsyncCall((Action3)ShowErrorMessage, + new object[] { itemFileName, itemInclude, "Error loading assembly:\n" + ex.ToString() }); + return null; } finally { #if DEBUG LoggingService.DebugFormatted("Loaded {0} in {1}ms", itemInclude, Environment.TickCount - time);