From e3bc0ad257c3868ff7ee4cc2eb50eb5dce5ad5ac Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Mon, 11 May 2020 10:40:44 -0700 Subject: [PATCH] Unregister capabilities on provider dispose Fixes #97060 --- src/vs/workbench/api/browser/mainThreadWebview.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/api/browser/mainThreadWebview.ts b/src/vs/workbench/api/browser/mainThreadWebview.ts index 66dd9fa03c8..9e4d58a2cd8 100644 --- a/src/vs/workbench/api/browser/mainThreadWebview.ts +++ b/src/vs/workbench/api/browser/mainThreadWebview.ts @@ -325,13 +325,14 @@ export class MainThreadWebviews extends Disposable implements extHostProtocol.Ma throw new Error(`Provider for ${viewType} already registered`); } - this._customEditorService.registerCustomEditorCapabilities(viewType, { - supportsMultipleEditorsPerDocument - }); - const extension = reviveWebviewExtension(extensionData); const disposables = new DisposableStore(); + + disposables.add(this._customEditorService.registerCustomEditorCapabilities(viewType, { + supportsMultipleEditorsPerDocument + })); + disposables.add(this._webviewWorkbenchService.registerResolver({ canResolve: (webviewInput) => { return webviewInput instanceof CustomEditorInput && webviewInput.viewType === viewType;