diff --git a/src/Components/CSharpExtensionSupport.fs b/src/Components/CSharpExtensionSupport.fs index 58a8bf48..491f6cb2 100644 --- a/src/Components/CSharpExtensionSupport.fs +++ b/src/Components/CSharpExtensionSupport.fs @@ -50,9 +50,11 @@ module CSharpExtension = hasWarned <- true - let activate () = + let activate (context: ExtensionContext) = // when extensions are installed or removed we need to update our state for the C# extension // so enablement/disablement works correctly - extensions.onDidChange.Invoke(fun _ -> - tryFindCSharpExtension () |> ignore - None) + context.Subscribe( + extensions.onDidChange.Invoke(fun _ -> + tryFindCSharpExtension () |> ignore + None) + ) diff --git a/src/fsharp.fs b/src/fsharp.fs index 2fa8c521..518a4943 100644 --- a/src/fsharp.fs +++ b/src/fsharp.fs @@ -33,7 +33,7 @@ let activate (context: ExtensionContext) : JS.Promise = logger.Error $"Error while activating feature '{label}': {ex}" Unchecked.defaultof<_> - CSharpExtensionSupport.activate () + CSharpExtension.activate(context) LanguageService.start context |> Promise.catch (fun e -> logger.Error $"Error activating FSAC: %A{e}") // prevent unhandled rejected promises