diff --git a/platform/eel-impl/src/com/intellij/platform/eel/impl/local/EelLocalExecApi.kt b/platform/eel-impl/src/com/intellij/platform/eel/impl/local/EelLocalExecApi.kt index 286897f93dd9..30af75a17168 100644 --- a/platform/eel-impl/src/com/intellij/platform/eel/impl/local/EelLocalExecApi.kt +++ b/platform/eel-impl/src/com/intellij/platform/eel/impl/local/EelLocalExecApi.kt @@ -64,9 +64,7 @@ class EelLocalExecPosixApi( val (cache, interactive) = when (opts.mode) { EelExecPosixApi.PosixEnvironmentVariablesOptions.Mode.MINIMAL -> { - return service().coroutineScope.async { - EnvironmentUtil.getEnvironmentMap() - } + return CompletableDeferred(EnvironmentUtil.getSystemEnv()) } EelExecPosixApi.PosixEnvironmentVariablesOptions.Mode.LOGIN_NON_INTERACTIVE -> { @@ -200,9 +198,7 @@ class EelLocalExecWindowsApi : EelExecWindowsApi, LocalEelExecApi { override val descriptor: EelDescriptor = LocalEelDescriptor override fun environmentVariables(opts: EelExecApi.EnvironmentVariablesOptions): Deferred> = - service().coroutineScope.async { - EnvironmentUtil.getEnvironmentMap() - } + CompletableDeferred(EnvironmentUtil.getEnvironmentMap()) override suspend fun findExeFilesInPath(binaryName: String): List = findExeFilesInPath(binaryName, LOG) diff --git a/platform/util/src/com/intellij/util/EnvironmentUtil.java b/platform/util/src/com/intellij/util/EnvironmentUtil.java index 59604316f374..1782ffc61bf9 100644 --- a/platform/util/src/com/intellij/util/EnvironmentUtil.java +++ b/platform/util/src/com/intellij/util/EnvironmentUtil.java @@ -112,7 +112,8 @@ public final class EnvironmentUtil { ourEnvGetter.set(loader); } - private static Map getSystemEnv() { + @ApiStatus.Internal + public static Map getSystemEnv() { if (OS.CURRENT == OS.Windows) { return Collections.unmodifiableMap(CollectionFactory.createCaseInsensitiveStringMap(System.getenv())); }