COMPRESS-203 actually, the file name must be fixed after it has been truncated
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/compress/trunk@1426338 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
index 5a7e4a3..bc82e5a 100644
--- a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
+++ b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
@@ -454,14 +454,14 @@
void writePaxHeaders(String entryName,
Map<String, String> headers) throws IOException {
String name = "./PaxHeaders.X/" + stripTo7Bits(entryName);
+ if (name.length() >= TarConstants.NAMELEN) {
+ name = name.substring(0, TarConstants.NAMELEN - 1);
+ }
while (name.endsWith("/")) {
// TarEntry's constructor would think this is a directory
// and not allow any data to be written
name = name.substring(0, name.length() - 1);
}
- if (name.length() >= TarConstants.NAMELEN) {
- name = name.substring(0, TarConstants.NAMELEN - 1);
- }
TarArchiveEntry pex = new TarArchiveEntry(name,
TarConstants.LF_PAX_EXTENDED_HEADER_LC);