diff --git a/src/vs/workbench/services/preferences/browser/preferencesService.ts b/src/vs/workbench/services/preferences/browser/preferencesService.ts index 96a7a241493b550d4a82f8e0570a162c0d61bef9..8788a416741e32b63da49d8f50312546cc0b2164 100644 --- a/src/vs/workbench/services/preferences/browser/preferencesService.ts +++ b/src/vs/workbench/services/preferences/browser/preferencesService.ts @@ -158,7 +158,7 @@ export class PreferencesService extends Disposable implements IPreferencesServic return Promise.resolve(null); } - async createPreferencesEditorModel(uri: URI): Promise> { + async createPreferencesEditorModel(uri: URI): Promise | null> { if (this.isDefaultSettingsResource(uri)) { return this.createDefaultSettingsEditorModel(uri); } @@ -174,7 +174,7 @@ export class PreferencesService extends Disposable implements IPreferencesServic if (this.contextService.getWorkbenchState() === WorkbenchState.WORKSPACE) { const settingsUri = await this.getEditableSettingsURI(ConfigurationTarget.WORKSPACE_FOLDER, uri); - if (settingsUri) { + if (settingsUri && settingsUri.toString() === uri.toString()) { return this.createEditableSettingsEditorModel(ConfigurationTarget.WORKSPACE_FOLDER, uri); } } @@ -185,7 +185,7 @@ export class PreferencesService extends Disposable implements IPreferencesServic return this.createEditableSettingsEditorModel(ConfigurationTarget.USER_REMOTE, uri); } - return Promise.reject(`unknown resource: ${uri.toString()}`); + return null; } openRawDefaultSettings(): Promise {