tmf.ui: Gracefully handle invalid tar import operations
authorMatthew Khouzam <matthew.khouzam@ericsson.com>
Thu, 15 Dec 2016 15:46:31 +0000 (10:46 -0500)
committerMatthew Khouzam <matthew.khouzam@ericsson.com>
Thu, 15 Dec 2016 18:20:38 +0000 (13:20 -0500)
A tar.gz file may have an invalid tar file in the gzip. The
getNextEntry would return null in such a case. This performs
that null check in order to validate the tar and avoid a user-
facing NPE.

Change-Id: I28ae7c787d77a0f1c9136264cfc678d7e52cda1a
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/87247
Reviewed-by: Hudson CI
Reviewed-by: Marc-André Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-André Laperle <marc-andre.laperle@ericsson.com>
tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/internal/tmf/ui/project/wizards/importtrace/TarFile.java

index 3647aa14e2c2ceb006d344771fedfa0716b90472..ea3830274ab7dff909aeef0981dff3b8510831a1 100644 (file)
@@ -63,7 +63,7 @@ public class TarFile {
         entryEnumerationStream = new TarArchiveInputStream(fInputStream);
         try {
             curEntry = (TarArchiveEntry) entryEnumerationStream.getNextEntry();
-            if (!curEntry.isCheckSumOK()) {
+            if (curEntry == null || !curEntry.isCheckSumOK()) {
                 throw new IOException("Error detected parsing initial entry header"); //$NON-NLS-1$
             }
         } catch (IOException e) {
This page took 0.025796 seconds and 5 git commands to generate.