@@ -355,6 +355,7 @@ export async function terminalWithDocker(): Promise<vscode.Terminal> {
355
355
* Also alter query to specify `ns=%SYS&csp=1`
356
356
* Also handles the alternative syntax isfs://server:namespace/
357
357
* in which there is no ns queryparam
358
+ * For both syntaxes the namespace folder name is uppercased
358
359
*
359
360
* @returns uri, altered if necessary.
360
361
* @throws if `ns` queryparam is missing but required.
@@ -363,22 +364,22 @@ export function redirectDotvscodeRoot(uri: vscode.Uri): vscode.Uri {
363
364
if ( ! schemas . includes ( uri . scheme ) ) {
364
365
return uri ;
365
366
}
366
- const dotMatch = uri . path . match ( / ^ \/ ( \. [ ^ / ] * ) \/ ( .* ) $ / ) ;
367
+ const dotMatch = uri . path . match ( / ^ \/ ( \. [ ^ / ] * ) ( \/ .* ) ? $ / ) ;
367
368
if ( dotMatch && dotMatch [ 1 ] === ".vscode" ) {
368
369
let namespace : string ;
369
370
const nsMatch = `&${ uri . query } &` . match ( / & n s = ( [ ^ & ] + ) & / ) ;
370
371
if ( nsMatch ) {
371
- namespace = nsMatch [ 1 ] ;
372
- const newQueryString = ( ( "&" + uri . query ) . replace ( `ns=${ namespace } ` , "ns=%SYS" ) + "&csp=1 " ) . slice ( 1 ) ;
373
- return uri . with ( { path : `/_vscode/${ namespace } / ${ dotMatch [ 2 ] } ` , query : newQueryString } ) ;
372
+ namespace = nsMatch [ 1 ] . toUpperCase ( ) ;
373
+ const newQueryString = ( ( "&" + uri . query ) . replace ( `ns=${ namespace } ` , "ns=%SYS" ) + "&csp" ) . slice ( 1 ) ;
374
+ return uri . with ( { path : `/_vscode/${ namespace } ${ dotMatch [ 2 ] || "" } ` , query : newQueryString } ) ;
374
375
} else {
375
376
const parts = uri . authority . split ( ":" ) ;
376
377
if ( parts . length === 2 ) {
377
- namespace = parts [ 1 ] ;
378
+ namespace = parts [ 1 ] . toUpperCase ( ) ;
378
379
return uri . with ( {
379
380
authority : `${ parts [ 0 ] } :%SYS` ,
380
- path : `/_vscode/${ namespace } / ${ dotMatch [ 2 ] } ` ,
381
- query : uri . query + "&csp=1 " ,
381
+ path : `/_vscode/${ namespace } ${ dotMatch [ 2 ] || "" } ` ,
382
+ query : uri . query + "&csp" ,
382
383
} ) ;
383
384
}
384
385
}
0 commit comments