diff --git a/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts b/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts index 5e48e6bc5dad960e0f4b35a52837a9b8ecf899c8..bd865990708dabaf504ee187c1abb685e310f79f 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts @@ -258,7 +258,10 @@ export class WebviewEditorService implements IWebviewEditorService { ): Promise { const didRevive = await this.tryRevive(webview); if (!didRevive) { - this._revivalPool.add(webview, () => { }); + let resolve: () => void; + const promise = new Promise(r => { resolve = r; }); + this._revivalPool.add(webview, resolve!); + return promise; } }