Files
openide/platform/bootstrap
Nikolay Chashnikov 98cf560666 IJPL-210932 Remote Dev: fix race condition in synchronization of early-access-registry.txt in the frontend process
Before, when a frontend process starts, it initialized EarlyAccessRegistryManager::configFile to the original config dir, because it was accessed via FrontendProcessPathCustomizer -> PerProcessPathCustomization.prepareConfig -> prepareConfigDir -> DisabledPluginsState.Companion.invalidate() -> DisabledPluginsState.<clinit> -> DisabledPluginsState.isDisabledStateIgnored before a per-process config directory is set. So actually changes were saved to early-access-registry.txt in the original config directory directly, and ProcessPerProjectSharedConfigFolderApplicationInitializedListener#setupSyncEarlyAccessRegistry may overwrite them with obsolete data from the per-process config directory.

Now, that synchronization logic is removed, and EarlyAccessRegistryManager::configFile is changed to always use the file in the original config directory so it won't depend on initialization order.


(cherry picked from commit b7b01d8672b6d65588292654b27554df6eb3a74d)

IJ-CR-181941

GitOrigin-RevId: fe6077f218d6a6ed16a7ea540e9eeadcb4723b34
2025-11-11 12:56:31 +00:00
..