From 249e97d821e24f7809f704f7e5af4764e4da005a Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Sun, 25 Oct 2020 17:23:57 +0100 Subject: [PATCH] sync extension state only if version matches --- src/vs/platform/userDataSync/common/extensionsSync.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vs/platform/userDataSync/common/extensionsSync.ts b/src/vs/platform/userDataSync/common/extensionsSync.ts index df6dfb1fa4f..56c8980f8ea 100644 --- a/src/vs/platform/userDataSync/common/extensionsSync.ts +++ b/src/vs/platform/userDataSync/common/extensionsSync.ts @@ -357,11 +357,11 @@ export class ExtensionsSynchroniser extends AbstractSynchroniser implements IUse if (added.length || updated.length) { await Promise.all([...added, ...updated].map(async e => { - const installedExtension = installedExtensions.filter(installed => areSameExtensions(installed.identifier, e.identifier))[0]; + const installedExtension = installedExtensions.find(installed => areSameExtensions(installed.identifier, e.identifier)); // Builtin Extension: Sync enablement and state if (installedExtension && installedExtension.isBuiltin) { - if (e.state) { + if (e.state && installedExtension.manifest.version === e.version) { const extensionState = JSON.parse(this.storageService.get(e.identifier.id, StorageScope.GLOBAL) || '{}'); forEach(e.state, ({ key, value }) => extensionState[key] = value); this.storageService.store(e.identifier.id, JSON.stringify(extensionState), StorageScope.GLOBAL); -- GitLab