diff options
author | Eike Stepper | 2015-05-05 10:43:37 +0000 |
---|---|---|
committer | Pascal Rapicault | 2016-01-02 21:37:54 +0000 |
commit | 2608885d67a3a99406a8cf1bc660241c3574dcfa (patch) | |
tree | eede74565ebabede00dc799b91b5ef2ed20cd45d /bundles/org.eclipse.equinox.p2.core | |
parent | d9057d09f6b96fd8b9988299d3eb5131f9a79a98 (diff) | |
download | rt.equinox.p2-2608885d67a3a99406a8cf1bc660241c3574dcfa.tar.gz rt.equinox.p2-2608885d67a3a99406a8cf1bc660241c3574dcfa.tar.xz rt.equinox.p2-2608885d67a3a99406a8cf1bc660241c3574dcfa.zip |
Bug 466249 - Propagate more exceptions to ease problem analysis
We often get problem reports with stack traces that "end" somewhere in
p2 even though it's obvious from looking at these places that there was
a causing exception. These causing exceptions are often not propagated
with the new exception that p2 creates and throws. I'm not sure if
that's on purpose or just an oversight. I've prepared a proposal to
enhance these places and make it easier to analyze the problems that
users report.
Change-Id: Iaa53448c53c18301113b42dbe80558eccec49e8e
Signed-off-by: Eike Stepper <stepper@esc-net.de>
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.core')
-rw-r--r-- | bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java b/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java index aef923c76..1d81d8117 100644 --- a/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java +++ b/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java @@ -64,7 +64,9 @@ public class FileUtils { try { return untarFile(zipFile, outputDir); } catch (TarException e) { - throw new IOException(e.getMessage()); + IOException ioException = new IOException(e.getMessage()); + ioException.initCause(e); + throw ioException; } } InputStream in = new FileInputStream(zipFile); @@ -72,7 +74,9 @@ public class FileUtils { return unzipStream(in, zipFile.length(), outputDir, null, null); } catch (IOException e) { // add the file name to the message - throw new IOException(NLS.bind(Messages.Util_Error_Unzipping, zipFile, e.getMessage())); + IOException ioException = new IOException(NLS.bind(Messages.Util_Error_Unzipping, zipFile, e.getMessage())); + ioException.initCause(e); + throw ioException; } finally { in.close(); } @@ -88,7 +92,9 @@ public class FileUtils { return unzipStream(in, zipFile.length(), outputDir, taskName, monitor); } catch (IOException e) { // add the file name to the message - throw new IOException(NLS.bind(Messages.Util_Error_Unzipping, zipFile, e.getMessage())); + IOException ioException = new IOException(NLS.bind(Messages.Util_Error_Unzipping, zipFile, e.getMessage())); + ioException.initCause(e); + throw ioException; } finally { in.close(); } |