diff options
author | Simon Rettberg | 2016-12-01 18:12:26 +0100 |
---|---|---|
committer | Simon Rettberg | 2016-12-01 18:12:26 +0100 |
commit | 43c30fe534d5d6ab93ba9f30ad1c8ef3590396a0 (patch) | |
tree | 894598e164270b01fc8004218a715acba60a1237 | |
parent | [LdapSearch] Add missing return statements (diff) | |
download | tmlite-bwlp-43c30fe534d5d6ab93ba9f30ad1c8ef3590396a0.tar.gz tmlite-bwlp-43c30fe534d5d6ab93ba9f30ad1c8ef3590396a0.tar.xz tmlite-bwlp-43c30fe534d5d6ab93ba9f30ad1c8ef3590396a0.zip |
[RecompressArchive] Handle exception when adding file to archive
-rw-r--r-- | src/main/java/org/openslx/taskmanager/tasks/RecompressArchive.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/main/java/org/openslx/taskmanager/tasks/RecompressArchive.java b/src/main/java/org/openslx/taskmanager/tasks/RecompressArchive.java index 0bd892f..fc23842 100644 --- a/src/main/java/org/openslx/taskmanager/tasks/RecompressArchive.java +++ b/src/main/java/org/openslx/taskmanager/tasks/RecompressArchive.java @@ -120,7 +120,13 @@ public class RecompressArchive extends AbstractTask entries.add( outEntry.getName() ); } // Actually add entry now - outArchive.putArchiveEntry( outEntry ); + try { + outArchive.putArchiveEntry( outEntry ); + } catch (Exception e) { + status.error = "(" + inputFile + ") Could not putArchiveEntry('" + inEntry.getName() + "'): " + e.getMessage(); + status.errorCode = Output.ErrorCode.TAR_ERROR; + return false; + } if ( !Util.streamCopy( inArchive, outArchive, outEntry.getSize() ) ) { status.error = "(" + inputFile + ") Could not copy entry '" + inEntry.getName() + "' to destination archive."; status.errorCode = Output.ErrorCode.WRITE_FAILED; @@ -188,7 +194,7 @@ public class RecompressArchive extends AbstractTask protected enum ErrorCode { - NOT_FOUND, UNKNOWN_FORMAT, UNKNOWN_ERROR, INVALID_DIRECTORY, WRITE_FAILED + NOT_FOUND, UNKNOWN_FORMAT, UNKNOWN_ERROR, INVALID_DIRECTORY, WRITE_FAILED, TAR_ERROR }; protected ErrorCode errorCode = null; |