Skip to content

Commit d0bf29c

Browse files
authored
do not set appication extensions location for default profile (microsoft#165496)
1 parent 9aba7db commit d0bf29c

File tree

5 files changed

+16
-6
lines changed

5 files changed

+16
-6
lines changed

src/vs/platform/extensionManagement/common/extensionsScannerService.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ export abstract class AbstractExtensionsScannerService extends Disposable implem
156156
@ILogService protected readonly logService: ILogService,
157157
@IEnvironmentService private readonly environmentService: IEnvironmentService,
158158
@IProductService private readonly productService: IProductService,
159+
@IUriIdentityService private readonly uriIdentityService: IUriIdentityService,
159160
@IInstantiationService private readonly instantiationService: IInstantiationService,
160161
) {
161162
super();
@@ -385,7 +386,7 @@ export abstract class AbstractExtensionsScannerService extends Disposable implem
385386
private async createExtensionScannerInput(location: URI, profile: boolean, type: ExtensionType, excludeObsolete: boolean, language: string | undefined, validate: boolean = true): Promise<ExtensionScannerInput> {
386387
const translations = await this.getTranslations(language ?? platform.language);
387388
const mtime = await this.getMtime(location);
388-
const applicationExtensionsLocation = profile ? this.userDataProfilesService.defaultProfile.extensionsResource : undefined;
389+
const applicationExtensionsLocation = profile && !this.uriIdentityService.extUri.isEqual(location, this.userDataProfilesService.defaultProfile.extensionsResource) ? this.userDataProfilesService.defaultProfile.extensionsResource : undefined;
389390
const applicationExtensionsLocationMtime = applicationExtensionsLocation ? await this.getMtime(applicationExtensionsLocation) : undefined;
390391
return new ExtensionScannerInput(
391392
location,
@@ -900,14 +901,15 @@ export class NativeExtensionsScannerService extends AbstractExtensionsScannerSer
900901
logService: ILogService,
901902
environmentService: IEnvironmentService,
902903
productService: IProductService,
904+
uriIdentityService: IUriIdentityService,
903905
instantiationService: IInstantiationService,
904906
) {
905907
super(
906908
systemExtensionsLocation,
907909
userExtensionsLocation,
908910
joinPath(userHome, '.vscode-oss-dev', 'extensions', 'control.json'),
909911
joinPath(userDataPath, MANIFEST_CACHE_FOLDER),
910-
userDataProfilesService, extensionsProfileScannerService, fileService, logService, environmentService, productService, instantiationService);
912+
userDataProfilesService, extensionsProfileScannerService, fileService, logService, environmentService, productService, uriIdentityService, instantiationService);
911913
this.translationsPromise = (async () => {
912914
if (platform.translationsConfigFile) {
913915
try {

src/vs/platform/extensionManagement/electron-sandbox/extensionsScannerService.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import { InstantiationType, registerSingleton } from 'vs/platform/instantiation/
1212
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
1313
import { ILogService } from 'vs/platform/log/common/log';
1414
import { IProductService } from 'vs/platform/product/common/productService';
15+
import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity';
1516
import { IUserDataProfilesService } from 'vs/platform/userDataProfile/common/userDataProfile';
1617

1718
export class ExtensionsScannerService extends NativeExtensionsScannerService implements IExtensionsScannerService {
@@ -23,14 +24,15 @@ export class ExtensionsScannerService extends NativeExtensionsScannerService imp
2324
@ILogService logService: ILogService,
2425
@INativeEnvironmentService environmentService: INativeEnvironmentService,
2526
@IProductService productService: IProductService,
27+
@IUriIdentityService uriIdentityService: IUriIdentityService,
2628
@IInstantiationService instantiationService: IInstantiationService,
2729
) {
2830
super(
2931
URI.file(environmentService.builtinExtensionsPath),
3032
URI.file(environmentService.extensionsPath),
3133
environmentService.userHome,
3234
URI.file(environmentService.userDataPath),
33-
userDataProfilesService, extensionsProfileScannerService, fileService, logService, environmentService, productService, instantiationService);
35+
userDataProfilesService, extensionsProfileScannerService, fileService, logService, environmentService, productService, uriIdentityService, instantiationService);
3436
}
3537

3638
}

src/vs/platform/extensionManagement/node/extensionsScannerService.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { IFileService } from 'vs/platform/files/common/files';
1111
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
1212
import { ILogService } from 'vs/platform/log/common/log';
1313
import { IProductService } from 'vs/platform/product/common/productService';
14+
import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity';
1415
import { IUserDataProfilesService } from 'vs/platform/userDataProfile/common/userDataProfile';
1516

1617
export class ExtensionsScannerService extends NativeExtensionsScannerService implements IExtensionsScannerService {
@@ -22,14 +23,15 @@ export class ExtensionsScannerService extends NativeExtensionsScannerService imp
2223
@ILogService logService: ILogService,
2324
@INativeEnvironmentService environmentService: INativeEnvironmentService,
2425
@IProductService productService: IProductService,
26+
@IUriIdentityService uriIdentityService: IUriIdentityService,
2527
@IInstantiationService instantiationService: IInstantiationService,
2628
) {
2729
super(
2830
URI.file(environmentService.builtinExtensionsPath),
2931
URI.file(environmentService.extensionsPath),
3032
environmentService.userHome,
3133
URI.file(environmentService.userDataPath),
32-
userDataProfilesService, extensionsProfileScannerService, fileService, logService, environmentService, productService, instantiationService);
34+
userDataProfilesService, extensionsProfileScannerService, fileService, logService, environmentService, productService, uriIdentityService, instantiationService);
3335
}
3436

3537
}

src/vs/platform/extensionManagement/test/node/extensionsScannerService.test.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import { IInstantiationService } from 'vs/platform/instantiation/common/instanti
1818
import { TestInstantiationService } from 'vs/platform/instantiation/test/common/instantiationServiceMock';
1919
import { ILogService, NullLogService } from 'vs/platform/log/common/log';
2020
import { IProductService } from 'vs/platform/product/common/productService';
21+
import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity';
2122
import { UriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentityService';
2223
import { IUserDataProfilesService, UserDataProfilesService } from 'vs/platform/userDataProfile/common/userDataProfile';
2324

@@ -33,14 +34,15 @@ class ExtensionsScannerService extends AbstractExtensionsScannerService implemen
3334
@ILogService logService: ILogService,
3435
@INativeEnvironmentService nativeEnvironmentService: INativeEnvironmentService,
3536
@IProductService productService: IProductService,
37+
@IUriIdentityService uriIdentityService: IUriIdentityService,
3638
@IInstantiationService instantiationService: IInstantiationService,
3739
) {
3840
super(
3941
URI.file(nativeEnvironmentService.builtinExtensionsPath),
4042
URI.file(nativeEnvironmentService.extensionsPath),
4143
joinPath(nativeEnvironmentService.userHome, '.vscode-oss-dev', 'extensions', 'control.json'),
4244
joinPath(ROOT, MANIFEST_CACHE_FOLDER),
43-
userDataProfilesService, extensionsProfileScannerService, fileService, logService, nativeEnvironmentService, productService, instantiationService);
45+
userDataProfilesService, extensionsProfileScannerService, fileService, logService, nativeEnvironmentService, productService, uriIdentityService, instantiationService);
4446
}
4547

4648
protected async getTranslations(language: string): Promise<Translations> {

src/vs/server/node/extensionsScannerService.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import { IFileService } from 'vs/platform/files/common/files';
1313
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
1414
import { ILogService } from 'vs/platform/log/common/log';
1515
import { IProductService } from 'vs/platform/product/common/productService';
16+
import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity';
1617
import { IUserDataProfilesService } from 'vs/platform/userDataProfile/common/userDataProfile';
1718
import { getNLSConfiguration, InternalNLSConfiguration } from 'vs/server/node/remoteLanguagePacks';
1819

@@ -25,14 +26,15 @@ export class ExtensionsScannerService extends AbstractExtensionsScannerService i
2526
@ILogService logService: ILogService,
2627
@INativeEnvironmentService private readonly nativeEnvironmentService: INativeEnvironmentService,
2728
@IProductService productService: IProductService,
29+
@IUriIdentityService uriIdentityService: IUriIdentityService,
2830
@IInstantiationService instantiationService: IInstantiationService,
2931
) {
3032
super(
3133
URI.file(nativeEnvironmentService.builtinExtensionsPath),
3234
URI.file(nativeEnvironmentService.extensionsPath),
3335
joinPath(nativeEnvironmentService.userHome, '.vscode-oss-dev', 'extensions', 'control.json'),
3436
joinPath(URI.file(nativeEnvironmentService.userDataPath), MANIFEST_CACHE_FOLDER),
35-
userDataProfilesService, extensionsProfileScannerService, fileService, logService, nativeEnvironmentService, productService, instantiationService);
37+
userDataProfilesService, extensionsProfileScannerService, fileService, logService, nativeEnvironmentService, productService, uriIdentityService, instantiationService);
3638
}
3739

3840
protected async getTranslations(language: string): Promise<Translations> {

0 commit comments

Comments
 (0)