diff --git a/src/sql/parts/modelComponents/webview.component.ts b/src/sql/parts/modelComponents/webview.component.ts index 0f19c05f7b..49c53a7641 100644 --- a/src/sql/parts/modelComponents/webview.component.ts +++ b/src/sql/parts/modelComponents/webview.component.ts @@ -26,6 +26,13 @@ import { IComponent, IComponentDescriptor, IModelStore, ComponentEventType } fro import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IContextKeyService, IContextKey } from 'vs/platform/contextkey/common/contextkey'; +function reviveWebviewOptions(options: vscode.WebviewOptions): vscode.WebviewOptions { + return { + ...options, + localResourceRoots: Array.isArray(options.localResourceRoots) ? options.localResourceRoots.map(URI.revive) : undefined + }; +} + @Component({ template: '', selector: 'modelview-webview-component' @@ -192,6 +199,7 @@ export default class WebViewComponent extends ComponentBase implements IComponen private getExtendedOptions(): WebviewOptions { let options = this.options || { enableScripts: true }; + options = reviveWebviewOptions(options); return { allowScripts: options.enableScripts, allowSvgs: true, @@ -208,4 +216,5 @@ export default class WebViewComponent extends ComponentBase implements IComponen } return rootPaths; } + } diff --git a/src/sql/workbench/api/node/extHostModelView.ts b/src/sql/workbench/api/node/extHostModelView.ts index 970af7e029..f00bf589a2 100644 --- a/src/sql/workbench/api/node/extHostModelView.ts +++ b/src/sql/workbench/api/node/extHostModelView.ts @@ -548,7 +548,7 @@ class ComponentWrapper implements sqlops.Component { } else { throw new Error(nls.localize('invalidIndex', 'The index is invalid.')); } - this._proxy.$addToContainer(this._handle, this.id, config.toIItemConfig(), index).then(undefined, this.handleError); + this._proxy.$addToContainer(this._handle, this.id, config.toIItemConfig(), index).then(undefined, (err) => this.handleError(err)); } public setLayout(layout: any): Thenable {