提交 e5ef8030 编写于 作者: A Ashley Hauck

Respond to feedback and add missing file

上级 ab9add62
...@@ -102,6 +102,7 @@ ...@@ -102,6 +102,7 @@
<IncludeOutputGroupsInVSIX>BuiltProjectOutputGroup</IncludeOutputGroupsInVSIX> <IncludeOutputGroupsInVSIX>BuiltProjectOutputGroup</IncludeOutputGroupsInVSIX>
<IncludeOutputGroupsInVSIXLocalOnly>DebugSymbolsProjectOutputGroup%3b</IncludeOutputGroupsInVSIXLocalOnly> <IncludeOutputGroupsInVSIXLocalOnly>DebugSymbolsProjectOutputGroup%3b</IncludeOutputGroupsInVSIXLocalOnly>
<ForceIncludeInVSIX>true</ForceIncludeInVSIX> <ForceIncludeInVSIX>true</ForceIncludeInVSIX>
<!-- Workaround for https://github.com/dotnet/sdk/issues/433#issuecomment-320024771 . Remove once resolved. -->
<AdditionalProperties>TargetFramework=net46</AdditionalProperties> <AdditionalProperties>TargetFramework=net46</AdditionalProperties>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\CSharp\csc\csc.csproj"> <ProjectReference Include="..\CSharp\csc\csc.csproj">
......
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
#if NETCOREAPP2_0
using System;
using System.Collections.Immutable;
namespace Microsoft.CodeAnalysis.CompilerServer
{
internal sealed class CoreClrCompilerServerHost : CompilerServerHost
{
private static readonly IAnalyzerAssemblyLoader s_analyzerLoader = new CoreClrAnalyzerAssemblyLoader();
// Caches are used by C# and VB compilers, and shared here.
public static readonly Func<string, MetadataReferenceProperties, PortableExecutableReference> SharedAssemblyReferenceProvider = (path, properties) => new CachingMetadataReference(path, properties);
public override IAnalyzerAssemblyLoader AnalyzerAssemblyLoader => s_analyzerLoader;
public override Func<string, MetadataReferenceProperties, PortableExecutableReference> AssemblyReferenceProvider => SharedAssemblyReferenceProvider;
internal CoreClrCompilerServerHost(string clientDirectory, string sdkDirectory)
: base(clientDirectory, sdkDirectory)
{
}
public override bool CheckAnalyzers(string baseDirectory, ImmutableArray<CommandLineAnalyzerReference> analyzers)
{
return AnalyzerConsistencyChecker.Check(baseDirectory, analyzers, s_analyzerLoader);
}
}
}
#endif
...@@ -39,6 +39,8 @@ protected override IClientConnectionHost CreateClientConnectionHost(string pipeN ...@@ -39,6 +39,8 @@ protected override IClientConnectionHost CreateClientConnectionHost(string pipeN
} }
protected internal override TimeSpan? GetKeepAliveTimeout() protected internal override TimeSpan? GetKeepAliveTimeout()
{
try
{ {
int keepAliveValue; int keepAliveValue;
string keepAliveStr = _appSettings[KeepAliveSettingName]; string keepAliveStr = _appSettings[KeepAliveSettingName];
...@@ -60,6 +62,12 @@ protected override IClientConnectionHost CreateClientConnectionHost(string pipeN ...@@ -60,6 +62,12 @@ protected override IClientConnectionHost CreateClientConnectionHost(string pipeN
return ServerDispatcher.DefaultServerKeepAlive; return ServerDispatcher.DefaultServerKeepAlive;
} }
} }
catch (Exception e)
{
CompilerServerLogger.LogException(e, "Could not read AppSettings");
return ServerDispatcher.DefaultServerKeepAlive;
}
}
protected override Task<Stream> ConnectForShutdownAsync(string pipeName, int timeout) protected override Task<Stream> ConnectForShutdownAsync(string pipeName, int timeout)
{ {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册