From 158bb391e3a94fdea0a8ca393d7080ac05aae2c3 Mon Sep 17 00:00:00 2001 From: nik Date: Fri, 25 Sep 2015 12:35:43 +0300 Subject: [PATCH] load deployment source configuration in read action (EA-72202) --- .../deployment/DeployToServerRunConfiguration.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/configuration/deployment/DeployToServerRunConfiguration.java b/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/configuration/deployment/DeployToServerRunConfiguration.java index 997628eb48ea..6c133cc28eb1 100644 --- a/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/configuration/deployment/DeployToServerRunConfiguration.java +++ b/platform/remote-servers/impl/src/com/intellij/remoteServer/impl/configuration/deployment/DeployToServerRunConfiguration.java @@ -22,6 +22,8 @@ import com.intellij.execution.configurations.RunConfigurationBase; import com.intellij.execution.configurations.RunProfileState; import com.intellij.execution.configurations.RuntimeConfigurationException; import com.intellij.execution.runners.ExecutionEnvironment; +import com.intellij.openapi.application.ReadAction; +import com.intellij.openapi.application.Result; import com.intellij.openapi.components.ComponentSerializationUtil; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.options.SettingsEditor; @@ -164,12 +166,16 @@ public class DeployToServerRunConfiguration type = findDeploymentSourceType(typeId); + final DeploymentSourceType type = findDeploymentSourceType(typeId); if (type != null) { - myDeploymentSource = type.load(deploymentTag, getProject()); + myDeploymentSource = new ReadAction() { + protected void run(final @NotNull Result result) { + result.setResult(type.load(deploymentTag, getProject())); + } + }.execute().getResultObject(); myDeploymentConfiguration = myDeploymentConfigurator.createDefaultConfiguration(myDeploymentSource); ComponentSerializationUtil.loadComponentState(myDeploymentConfiguration.getSerializer(), deploymentTag.getChild(SETTINGS_ELEMENT)); }