diff --git a/platform/lang-api/src/com/intellij/execution/actions/RunConfigurationProducer.java b/platform/lang-api/src/com/intellij/execution/actions/RunConfigurationProducer.java index b9a44ffa7bc8..fa39564c294f 100644 --- a/platform/lang-api/src/com/intellij/execution/actions/RunConfigurationProducer.java +++ b/platform/lang-api/src/com/intellij/execution/actions/RunConfigurationProducer.java @@ -176,19 +176,20 @@ public abstract class RunConfigurationProducer { } ConfigurationFromContext fromContext = createConfigurationFromContext(context); - if (fromContext != null) { - final PsiElement psiElement = fromContext.getSourceElement(); - final Location _location = PsiLocation.fromPsiElement(psiElement, location.getModule()); - if (_location != null) { - // replace with existing configuration if any - final RunManager runManager = RunManager.getInstance(context.getProject()); - final ConfigurationType type = fromContext.getConfigurationType(); - final RunnerAndConfigurationSettings settings = findExistingConfiguration(context); - if (settings != null) { - fromContext.setConfigurationSettings(settings); - } else { - runManager.setUniqueNameIfNeed(fromContext.getConfiguration()); - } + if (fromContext == null) { + return null; + } + + final PsiElement psiElement = fromContext.getSourceElement(); + final Location _location = PsiLocation.fromPsiElement(psiElement, location.getModule()); + if (_location != null) { + // replace with existing configuration if any + RunnerAndConfigurationSettings settings = findExistingConfiguration(context); + if (settings == null) { + RunManager.getInstance(context.getProject()).setUniqueNameIfNeed(fromContext.getConfiguration()); + } + else { + fromContext.setConfigurationSettings(settings); } }