@@ -58,27 +58,31 @@ module internal SolutionConfigCache =
5858 Set.contains this.GetSemanticHighlightingFrom ( set [ FSharpExtensionConfig.Old; FSharpExtensionConfig.Both ])
5959
6060 let readFSharpExtensionConfig ( solutionPath : string ) =
61- let configFilePath =
62- Path.Combine( solutionPath, " extensibility.settings.VisualStudio.json" )
61+ if String.IsNullOrEmpty( solutionPath) then
62+ System.Diagnostics.Trace.TraceWarning( " Solution path is null or empty. Using default config." )
63+ FSharpExtensionConfig.Default
64+ else
65+ let configFilePath =
66+ Path.Combine( solutionPath, " extensibility.settings.VisualStudio.json" )
6367
64- if File.Exists configFilePath then
65- try
66- let json = File.ReadAllText configFilePath
67- let jObject = JObject.Parse json
68+ if File.Exists configFilePath then
69+ try
70+ let json = File.ReadAllText configFilePath
71+ let jObject = JObject.Parse json
6872
69- {
70- GetDiagnosticsFrom = jObject[ " fsharp.getDiagnosticsFrom" ]. ToString() .ToLower()
71- GetSemanticHighlightingFrom = jObject[ " fsharp.getSemanticHighlightingFrom" ]. ToString() .ToLower()
72- }
73- with ex ->
74- System.Diagnostics.Trace.TraceError( $" Error reading FSharpExtensionConfig from {configFilePath}" , ex)
75- FSharpExtensionConfig.Default
76- else
77- System.Diagnostics.Trace.TraceInformation(
78- $" extensibility.settings.VisualStudio.json not found in {solutionPath}. Using default config."
79- )
73+ {
74+ GetDiagnosticsFrom = jObject[ " fsharp.getDiagnosticsFrom" ]. ToString() .ToLower()
75+ GetSemanticHighlightingFrom = jObject[ " fsharp.getSemanticHighlightingFrom" ]. ToString() .ToLower()
76+ }
77+ with ex ->
78+ System.Diagnostics.Trace.TraceError( $" Error reading FSharpExtensionConfig from {configFilePath}" , ex)
79+ FSharpExtensionConfig.Default
80+ else
81+ System.Diagnostics.Trace.TraceInformation(
82+ $" extensibility.settings.VisualStudio.json not found in {solutionPath}. Using default config."
83+ )
8084
81- FSharpExtensionConfig.Default
85+ FSharpExtensionConfig.Default
8286
8387 let ExtensionConfig = ConditionalWeakTable< Solution, FSharpExtensionConfig>()
8488
0 commit comments