From dd931bd9785661ac4145b3625b94e9f23c29cb03 Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Thu, 11 Feb 2010 11:39:09 -0800 Subject: [PATCH] Don't doubly wrap TransportException in smart HTTP client If the readAdvertisedRefs() method throws an exception, its already closed the connection and wrapped the underlying cause inside of a suitable TransportException object that it is throwing. We shouldn't catch IOException and rethrow a wrapped copy here, because we'll double wrap the exception thrown by readAdvertisedRefs. This may obsecure the root cause of the connection failure from the end-user. Change-Id: I0ca61560f9888c666323dac8a5582aab25e897ff Signed-off-by: Shawn O. Pearce --- .../eclipse/jgit/transport/TransportHttp.java | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportHttp.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportHttp.java index c53bcf260..8de16c13d 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportHttp.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportHttp.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009-2010, Google Inc. + * Copyright (C) 2008-2010, Google Inc. * Copyright (C) 2008, Shawn O. Pearce * and other copyright owners as documented in the project's IP log. * @@ -572,12 +572,7 @@ class SmartHttpFetchConnection extends BasePackFetchConnection { init(advertisement, DisabledOutputStream.INSTANCE); outNeedsEnd = false; - try { - readAdvertisedRefs(); - } catch (IOException err) { - close(); - throw new TransportException(uri, "remote hung up", err); - } + readAdvertisedRefs(); } @Override @@ -598,12 +593,7 @@ class SmartHttpPushConnection extends BasePackPushConnection { init(advertisement, DisabledOutputStream.INSTANCE); outNeedsEnd = false; - try { - readAdvertisedRefs(); - } catch (IOException err) { - close(); - throw new TransportException(uri, "remote hung up", err); - } + readAdvertisedRefs(); } protected void doPush(final ProgressMonitor monitor,