@@ -196,10 +196,39 @@ index 2c64061da7..c0ef8faedd 100644
196196 // Do nothing. If we can't read the file we have no
197197 // language pack config.
198198diff --git a/src/vs/code/browser/workbench/workbench.ts b/src/vs/code/browser/workbench/workbench.ts
199- index a599f5a7eb..ec7ccd43f8 100644
199+ index a599f5a7eb..d988288ffe 100644
200200--- a/src/vs/code/browser/workbench/workbench.ts
201201+++ b/src/vs/code/browser/workbench/workbench.ts
202- @@ -298,35 +298,6 @@ class WorkspaceProvider implements IWorkspaceProvider {
202+ @@ -12,6 +12,7 @@ import { request } from 'vs/base/parts/request/browser/request';
203+ import { isFolderToOpen, isWorkspaceToOpen } from 'vs/platform/windows/common/windows';
204+ import { isEqual } from 'vs/base/common/resources';
205+ import { isStandalone } from 'vs/base/browser/browser';
206+ + import { Schemas } from 'vs/base/common/network';
207+
208+ interface ICredential {
209+ service: string;
210+ @@ -242,12 +243,18 @@ class WorkspaceProvider implements IWorkspaceProvider {
211+
212+ // Folder
213+ else if (isFolderToOpen(workspace)) {
214+ - targetHref = `${document.location.origin}${document.location.pathname}?${WorkspaceProvider.QUERY_PARAM_FOLDER}=${encodeURIComponent(workspace.folderUri.toString())}`;
215+ + const target = workspace.folderUri.scheme === Schemas.vscodeRemote
216+ + ? workspace.folderUri.path
217+ + : encodeURIComponent(workspace.folderUri.toString());
218+ + targetHref = `${document.location.origin}${document.location.pathname}?${WorkspaceProvider.QUERY_PARAM_FOLDER}=${target}`;
219+ }
220+
221+ // Workspace
222+ else if (isWorkspaceToOpen(workspace)) {
223+ - targetHref = `${document.location.origin}${document.location.pathname}?${WorkspaceProvider.QUERY_PARAM_WORKSPACE}=${encodeURIComponent(workspace.workspaceUri.toString())}`;
224+ + const target = workspace.workspaceUri.scheme === Schemas.vscodeRemote
225+ + ? workspace.workspaceUri.path
226+ + : encodeURIComponent(workspace.workspaceUri.toString());
227+ + targetHref = `${document.location.origin}${document.location.pathname}?${WorkspaceProvider.QUERY_PARAM_WORKSPACE}=${target}`;
228+ }
229+
230+ // Append payload if any
231+ @@ -298,35 +305,6 @@ class WorkspaceProvider implements IWorkspaceProvider {
203232 let workspace: IWorkspace;
204233 let payload = Object.create(null);
205234
0 commit comments