From c8c0556f76be89ab422e68e6296b3cd473ab8278 Mon Sep 17 00:00:00 2001 From: Matthias Sohn Date: Sun, 29 Nov 2020 00:34:41 +0100 Subject: [errorprone] FetchProcess: ensure exception isn't suppressed If TransportException is thrown in the finally block of execute() ensure that the exception handled in the previous catch block isn't suppressed. Change-Id: I670acdfb4d36e7a419a9a79ae9faab2e085a43ee Signed-off-by: Matthias Sohn --- org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchProcess.java | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'org.eclipse.jgit/src/org/eclipse') diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchProcess.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchProcess.java index 0f1892a97e..45adfa6522 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchProcess.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchProcess.java @@ -87,13 +87,20 @@ class FetchProcess { packLocks.clear(); localRefs = null; + Throwable e1 = null; try { executeImp(monitor, result); + } catch (NotSupportedException | TransportException err) { + e1 = err; + throw err; } finally { try { for (PackLock lock : packLocks) lock.unlock(); } catch (IOException e) { + if (e1 != null) { + e.addSuppressed(e1); + } throw new TransportException(e.getMessage(), e); } } -- cgit v1.2.3