diff options
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java')
-rwxr-xr-x | platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java | 19 |
1 files changed, 14 insertions, 5 deletions
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 9dd3dd21f879..7e1c81ad2fbc 100755 --- a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java +++ b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateChecker.java @@ -618,12 +618,21 @@ public final class UpdateChecker { Future<?> downloadThreadFuture = ApplicationManager.getApplication().executeOnPooledThread(new Runnable() { public void run() { try { - URL requestUrl = new URL(url); - if (!StandardFileSystems.FILE_PROTOCOL.equals(requestUrl.getProtocol())) { - HttpConfigurable.getInstance().prepareURL(url); - requestUrl = new URL(url + (url.contains("?") ? "&" : "?") + "build=" + ApplicationInfo.getInstance().getBuild().asString()); + final String urlToCheck; + if (!StandardFileSystems.FILE_PROTOCOL.equals(new URL(url).getProtocol())) { + urlToCheck = url + (url.contains("?") ? "&" : "?") + "build=" + ApplicationInfo.getInstance().getBuild().asString(); + } else { + urlToCheck = url; } - inputStreams[0] = requestUrl.openStream(); + + HttpURLConnection connection = ApplicationManager.getApplication() != null ? + HttpConfigurable.getInstance().openHttpConnection(urlToCheck) : + (HttpURLConnection)new URL(urlToCheck).openConnection(); + connection.setReadTimeout(HttpConfigurable.CONNECTION_TIMEOUT); + connection.setConnectTimeout(HttpConfigurable.CONNECTION_TIMEOUT); + connection.connect(); + + inputStreams[0] = connection.getInputStream(); } catch (IOException e) { exception[0] = e; |