| Index: chrome/browser/extensions/extension_sync_service.cc
|
| diff --git a/chrome/browser/extensions/extension_sync_service.cc b/chrome/browser/extensions/extension_sync_service.cc
|
| index 5adab024d6d55450c2057f7e3f9e8326f2edf685..b69a1a4fa983cbf3e5cd189897be9997b9664141 100644
|
| --- a/chrome/browser/extensions/extension_sync_service.cc
|
| +++ b/chrome/browser/extensions/extension_sync_service.cc
|
| @@ -382,6 +382,15 @@ bool ExtensionSyncService::ProcessExtensionSyncDataHelper(
|
| }
|
|
|
| // Set user settings.
|
| + // If the extension has been disabled from sync, it may not have
|
| + // been installed yet, so we don't know if the disable reason was a
|
| + // permissions increase. That will be updated once CheckPermissionsIncrease
|
| + // is called for it.
|
| + if (extension_sync_data.enabled())
|
| + extension_service_->EnableExtension(id);
|
| + else if (!IsPendingEnable(id))
|
| + extension_service_->DisableExtension(
|
| + id, Extension::DISABLE_UNKNOWN_FROM_SYNC);
|
|
|
| // We need to cache some version information here because setting the
|
| // incognito flag invalidates the |extension| pointer (it reloads the
|
|
|