diff --git a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java index 1bae513aefbf..b8013a99916a 100644 --- a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java +++ b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java @@ -864,7 +864,17 @@ public final class UpdateChecker { String url = null; if (descriptor instanceof PluginNode) { url = ((PluginNode)descriptor).getDownloadUrl(); + if (url != null) { + final String repositoryName = ((PluginNode)descriptor).getRepositoryName(); + if (repositoryName != null) { + final VirtualFile pluginFile = PluginDownloader.findPluginFile(url, repositoryName); + if (pluginFile != null) { + url = getPluginUrl(pluginFile); + } + } + } } + if (url == null) { String uuid = ApplicationManager.getApplication() == null ? UUID.randomUUID().toString() :