diff --git a/src/VisualStudio/Core/Def/Implementation/Diagnostics/VisualStudioWorkspaceDiagnosticAnalyzerProviderService.cs b/src/VisualStudio/Core/Def/Implementation/Diagnostics/VisualStudioWorkspaceDiagnosticAnalyzerProviderService.cs index d6ceb32c90777d865866c3fbabf74d0f26e186f5..049c892edeb38ad64207b8ee80d0a3be1f4f8e5a 100644 --- a/src/VisualStudio/Core/Def/Implementation/Diagnostics/VisualStudioWorkspaceDiagnosticAnalyzerProviderService.cs +++ b/src/VisualStudio/Core/Def/Implementation/Diagnostics/VisualStudioWorkspaceDiagnosticAnalyzerProviderService.cs @@ -43,6 +43,12 @@ public VisualStudioWorkspaceDiagnosticAnalyzerProviderService(VisualStudioWorksp // Get the analyzer assets for installed VSIX extensions through the VSIX extension manager. var extensionManager = workspace.GetVsService(assembly.GetType("Microsoft.VisualStudio.ExtensionManager.SVsExtensionManager")); + if (extensionManager == null) + { + // extension manager can't be null. if it is null, then VS is seriously broken. + // fail fast right away + FailFast.OnFatalException(new Exception("extension manager can't be null")); + } _hostDiagnosticAnalyzerInfo = GetHostAnalyzerPackagesWithName(extensionManager, assembly.GetType("Microsoft.VisualStudio.ExtensionManager.IExtensionContent")); }