diff --git a/src/typings/lib.array-ext.d.ts b/src/typings/lib.array-ext.d.ts index 127f64e1fd4b149db1a63b9e58c61b3b3bc77007..5a77b70a9f26e2d61db9f85687845819d90ba13c 100644 --- a/src/typings/lib.array-ext.d.ts +++ b/src/typings/lib.array-ext.d.ts @@ -4,6 +4,8 @@ *--------------------------------------------------------------------------------------------*/ interface ArrayConstructor { + isArray(arg: ReadonlyArray | null | undefined): arg is ReadonlyArray; + isArray(arg: Array | null | undefined): arg is Array; isArray(arg: any): arg is Array; isArray(arg: any): arg is Array; } \ No newline at end of file diff --git a/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts b/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts index b12720c63ffc1ea3cc552442391e5f70144e73e7..187214dbe6072abb0ade66018af7ddb445e8dc3c 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewEditorService.ts @@ -92,7 +92,7 @@ export function areWebviewInputOptionsEqual(a: WebviewInputOptions, b: WebviewIn && a.retainContextWhenHidden === b.retainContextWhenHidden && a.tryRestoreScrollPosition === b.tryRestoreScrollPosition && (a.localResourceRoots === b.localResourceRoots || (Array.isArray(a.localResourceRoots) && Array.isArray(b.localResourceRoots) && equals(a.localResourceRoots, b.localResourceRoots, (a, b) => a.toString() === b.toString()))) - && (a.portMapping === b.portMapping || (Array.isArray(a.portMapping) && Array.isArray(b.portMapping) && equals(a.portMapping, b.portMapping, (a, b) => a.from === b.from && a.to === b.to))); + && (a.portMapping === b.portMapping || (Array.isArray(a.portMapping) && Array.isArray(b.portMapping) && equals(a.portMapping, b.portMapping, (a, b) => a.extensionHostPort === b.extensionHostPort && a.webviewPort === b.webviewPort))); } function canRevive(reviver: WebviewReviver, webview: WebviewEditorInput): boolean {